473,758 Members | 2,401 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

A Portable C Compiler

http://slashdot.org/

"The leaner, lighter, faster, and most importantly, BSD Licensed,
Compiler PCC has been imported into OpenBSD's CVS and NetBSD's pkgsrc.
The compiler is based on the original Portable C Compiler by S. C.
Johnson, written in the late 70's. Even though much of the compiler has
been rewritten, some of the basics still remain. It is currently not
bug-free, but it compiles on x86 platform, and work is being done on it
to take on GCC's job."

The PCC was the first C compiler I used and studied, back then, when
Unix and C started appearing here in France. We had a source license,
and browsing there I found the PCC code.

The discussion is here.

http://undeadly.org/cgi?action=artic...mode=expanded/

It is interesting to see the level of frustration of the BSD people
with GCC. They just want a compiler that is simple, small, and...
supports all architectures that Open BSD supports.

Will they succeed?

Of course it is easy to have a compiler that supports 3 back ends, say.
But supporting 10?

With a mixture of weird CPUs etc?

In any case PCC should be up to the task. I remember it run in the
Honeywell-Bull computers of that time (beginning of the 80s), so
it should run in many others... Running with those was really a
challenge.
Sep 17 '07
42 3451
On Sep 19, 10:34 am, jacob navia <ja...@jacob.re mcomp.frwrote:
Ahhh you do not use "ld"?
What has that got to do with whether you are using gcc? ld is a seperate
product which gcc happens to use.

A developer uses the whole chain:
compiler --assembler-->linker-->debugger.
"ld" has nothing to do with GCC. GCC does not
distribute with an assembler, nor with a linker.
Often "ld" is a proprietary product.

You are complaning about slow link times. That is
the fault of your choice of linker, not of GCC.

Sep 18 '07 #21
On 18 Sep 2007 at 22:32, Rui Maciel wrote:
jacob navia wrote:
>Yeah, if it compiles C it is of no much use, I know.

But maybe it *could* be that *some* people *like* C you see?

Sarcasm aside, no one has ever stated that no one liked C. As this very
thread is taking place in a newsgroup dedicated to the C programming
language, that insinuation is rather amusing. Were you trying to fan the
flames?
Gee, do you reckon? Jacob's whole modus operandi in this group is to be
completely unreasonable, get people really riled up, and then when they
react he plays the victim - "everyone's picking on me!"

Look at this thread. It serves absolutely no purpose except for Jacob to
spread a load of FUD about gcc.

Jacob obviously thinks the world owes him a living because he took
someone else's compiler, knocked up a pretty GUI IDE to go with it, and
repackaged it as a commercial product. It's clear from his postings to
this group over several years that he doesn't have the first beginnings
of a clue about C - he's not just a social pariah, he's technically
inept to go with it.

This group would be a better place if Jacob would stop posting to it and
leave us all in peace.

Sep 18 '07 #22
A N Other wrote:
[snip]

The *only* messages you post in this group are long messages
of despair about "jacob"...

I must be really important to you my dear, what an interest
for my humble person.

Have a nice time and next time do not be afraid.

Just post with your correct name as I do. Nothing will
happen to you.

jacob
Sep 18 '07 #23
On Wed, 19 Sep 2007 00:34:44 +0200, in comp.lang.c , jacob navia
<ja***@jacob.re mcomp.frwrote:
>Flash Gordon wrote:
>jacob navia wrote, On 18/09/07 21:33:
>>>
It is an ASCII LINKER SCRIPT for GNU's "ld"...

So? That is not part of gcc and the actual C library is available as a
shared object, check /lib/libc.so.6. That is two reasons why your
argument here is rubbish.

OK. You find normal that the system library uses an ASCII script for a
specific linker.
The point is, you were criticising gcc, and this isn't part of it.
Your argument was consequently nonsense.
>If Microsoft would have done that, nobody could
link under windows without using their linker...
Nonsense. All your linker has to do is parse the script. Even easier,
do as cygwin do, and provide your own standard library.
>A developer uses the whole chain:
Again, so what? If you attack a tool, don't blame the tool for flaws
in someone else's product.

"My mother was injured in the Pamplona bull run. I blame the gas
board."
>>Under linux if you do not support __attribute__ you are doomed.

By the same argument under Windows you are doomed if you don't support
__cdecl or whatever it is that MS use in all their headers.

I do not support __cdecl.
Then by your own logic, you are doomed, right?
--
Mark McIntyre

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it."
--Brian Kernighan
Sep 19 '07 #24
On Sep 18, 3:29 am, Erik Trulsson <ertr1...@stude nt.uu.sewrote:
user923005 <dcor...@connx. comwrote:
On Sep 17, 2:53 pm, jacob navia <ja...@jacob.re mcomp.frwrote:
>http://slashdot.org/
"The leaner, lighter, faster, and most importantly, BSD Licensed,
Compiler PCC has been imported into OpenBSD's CVS and NetBSD's pkgsrc.
The compiler is based on the original Portable C Compiler by S. C.
Johnson, written in the late 70's. Even though much of the compiler has
been rewritten, some of the basics still remain. It is currently not
bug-free, but it compiles on x86 platform, and work is being done on it
to take on GCC's job."
The PCC was the first C compiler I used and studied, back then, when
Unix and C started appearing here in France. We had a source license,
and browsing there I found the PCC code.
The discussion is here.
>http://undeadly.org/cgi?action=artic...mode=expanded/
It is interesting to see the level of frustration of the BSD people
with GCC. They just want a compiler that is simple, small, and...
supports all architectures that Open BSD supports.
Will they succeed?
Of course it is easy to have a compiler that supports 3 back ends, say.
But supporting 10?
With a mixture of weird CPUs etc?
In any case PCC should be up to the task. I remember it run in the
Honeywell-Bull computers of that time (beginning of the 80s), so
it should run in many others... Running with those was really a
challenge.
Starting with PCC and trying to compete with GCC is like starting with
a dingy and planning to race a 65' yacht.

That depends on in what manner you are trying to compete. It is true that it
seems unlikely that PCC will be able to generate as good code as GCC anytime
in the near future. On the other hand it should not be very difficult to
compete with GCC with regards to compile time and memory usage needed by the
compiler (areas in which GCC is not very good.)

For people trying to do development on older machines these features can be worth
much more than having the generated code run 0.5% faster.
GCC works great as a cross compiler. Why work on some crusty old
platform?
Other people will have other priorities.
[snip]

Sep 19 '07 #25
jacob navia wrote:
>
.... snip ...
>
Each time you make a change in C you have to rebuild. for many
projects, a change can affect a lot of files. Global changes that
need a full recompilation are done not VERY often, but they are
done...

This means that a compiler that slows down the development process
by just 30-60 seconds per build, it is taking between 15-30
minutes per day to each developer...
To me, the requirement for such a long routine compile indicates
mis-organization. Normally you would only be modifying one source
file, and the rebuild should be limited to recompiling that and
relinking. Sometimes the associated .h file may need revision, and
then (rarely) the work can become considerably larger. So in
general the compilation should not be a problem, however the
linking may be.

--
Chuck F (cbfalconer at maineline dot net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home .att.net>

--
Posted via a free Usenet account from http://www.teranews.com

Sep 19 '07 #26
A N Other <sp******@inval id.comwrites:
[...]
Jacob obviously thinks the world owes him a living because he took
someone else's compiler, knocked up a pretty GUI IDE to go with it, and
repackaged it as a commercial product.
[...]

jacob has claimed here that lcc-win32 is a complete rewrite of lcc,
and that little or no original lcc source code remains.

I have no basis on which to judge the accuracy of that claim.

--
Keith Thompson (The_Other_Keit h) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Sep 19 '07 #27
Keith Thompson said:
A N Other <sp******@inval id.comwrites:
[...]
>Jacob obviously thinks the world owes him a living because he took
someone else's compiler, knocked up a pretty GUI IDE to go with it, and
repackaged it as a commercial product.
[...]

jacob has claimed here that lcc-win32 is a complete rewrite of lcc,
and that little or no original lcc source code remains.

I have no basis on which to judge the accuracy of that claim.
Simply compare it to the accuracy of all his other claims.

Since I killfiled Mr Navia, people have stopped complaining at me for
arguing with him all the time. I am not ungrateful for this. I have
noticed, however, a marked increase in the rate with which *other people*
are arguing with him. When you sack firefighters, you should expect more
fires.

I would be interested in hearing people's justifications for arguing with
Mr Navia, given that I was often criticised for so doing.

--
Richard Heathfield <http://www.cpax.org.uk >
Email: -www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
Sep 19 '07 #28
jacob navia wrote, On 18/09/07 23:27:
Flash Gordon wrote:
>You haven't answered the point about there being complete
distribution s built with other than gcc.

As I said several lines before:
>Intel is there though, but that is the only one. Never heard from
>anyone else.

Yes, Intel has the resources to throw into something like that. It has
developed a "gcc clone" mode, where it even copies the command line
options of gcc.
Therefore gcc does *not* have the monopoly you were claiming it has.
--
Flash Gordon
Sep 19 '07 #29
jacob navia wrote:
Flash Gordon wrote:
>You haven't answered the point about there being complete
distribution s built with other than gcc.
As a reverse example, OpenSolaris builds with Sun cc and gcc.
As I said several lines before:
>>Intel is there though, but that is the only one. Never heard from
anyone else.

Yes, Intel has the resources to throw into something like that. It has
developed a "gcc clone" mode, where it even copies the command line
options of gcc.
As does Sun Studio. Before too long, we'll have non-standardised, but
near universal compiler options, which makes porting a heck of a lot
easier. Just goes to show what happens one one compiler dominates a sector.

--
Ian Collins.
Sep 19 '07 #30

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

14
2628
by: John Smith | last post by:
Hi I'm looking for a header-file only STL implementation. I know the vendors provide one with compilers but often they are either buggy or has some other problems. My problem is that under Windows the different versions of the Microsoft compiler are not compatible with each other. This means you can't compile file with version X and link with version Y because you end up with linker errors.
5
4812
by: Mark Shelor | last post by:
Problem: find a portable way to determine whether a compiler supports the "long long" type of C99. I thought I had this one solved with the following code: #include <limits.h> #ifdef ULONG_LONG_MAX
5
2392
by: Kobu | last post by:
In embedded systems (programmed in C), often times structure declarations are used to group together several status/control/data registers of external hardware (or even internal registers). The example below (from GBD's THE C BOOK) uses this. Is this a portable method? . /*
8
7075
by: suresh_C# | last post by:
Dear All, What is difference between Portable Executable (PE) file and a Assembly? Thanks, Mahesh
131
6205
by: pemo | last post by:
Is C really portable? And, apologies, but this is possibly a little OT? In c.l.c we often see 'not portable' comments, but I wonder just how portable C apps really are. I don't write portable C code - *not only* because, in a 'C sense', I
5
7628
by: Richard Giuly | last post by:
Hello, I would like to write "portable" C++ code that could theoretically run on linux, windows, and other platforms, and I'd like to use VS as the editor/compiler/linker. The simplest thing that seems to complie in VS is this: //VS example #include "stdafx.h"
20
21770
by: rkk | last post by:
Hi, Is there an equivalent typeof macro/method to determine the type of a variable in runtime & most importantly that works well with most known C compilers? gcc compiler supports typeof() macro, but the same code is not getting compiled in solaris forte compiler and in microsoft VS 2003 compiler. I tried something like below:
32
2041
by: r.z. | last post by:
class vector3 { public: union { float data; struct { float x, y, z; };
23
3345
by: asit | last post by:
what is the difference between portable C, posix C and windows C ???
0
9299
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10076
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9908
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9885
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
6564
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5175
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
3832
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
3402
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2702
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.