Re: GNU gcc upgrades

"Daniel C. von Asmuth" <asmuth-8LkvcxCLB6JmR6Xm/[email protected]>
Newsgroups gmane.linux.usability.annoyances
Message-ID <[email protected]>
Thus quoth John on Sat, Sep 27, 2003 at 08:37:22AM +1000:
> On 26 Sep 2003 at 23:15, Daniel C. von Asmuth wrote:
> 
> > Thus quoth Jacq, John on Wed, Sep 24, 2003 at 08:05:41AM +1000:
> > > 
> > > It is a bit of a pain for me as well, especially the dynamic libraries. The static ones are simple enough. It got worse when the new glibc2 game out as while I understood the numbering system prior to that, up to libc.5.x I suddenly wasn't so sure anymore. So I simply took the coward's way out, backed up everything personal as tar.gz files to zip disks and reinstalled a brand new Linux version. Then I reinstalled my personal stuff, which was fine except for compiling.
> > > 
> > This implies the problem is with glibc rather than gcc (not that this is
> > very helpful).
> 
> I fail to make the distinction between the two, both seem to be closely 
> entertwined and both come from GNU.

The C compiler converts a source file written in the C programming language
into an object module. It (supposedly) adheres to standards like C99. 

The compiler may call the linker which links your object module against the
C library and other libraries to produce an executable program. In a book
like Kernighan & Ritchie you will also find a description of which functions
the C programming language requires to be present in the standard C library.

The Unix kernel is traditionally a monolithic program. It exposes an API to
user-space programs by means of system calls. (occasionally, you get to 
access kernel memory directly). The C and other core Unix libaries are the 
main API the programmer uses. (some library functions are also available on 
MS Windows) A host of standards (like Posix and XPG) cover Unix. 

The GNU C library implements most of the required functions acceptably well,
but has a number of non-standard functions. (GNU means GNU's Not Unix for a
reason). The result is that programs written for GNU are often a major
annoyance for users of other (Unix-like) Operating Systems. 

The best thing you can do is to test your work on a variety of OSes early
on, and code to the lowest common denominator (which of course means that
you must never use any kind of GUI, because every OS clan has its own
graphics library, incompatible with the Unix family). 

Kind regards,


Daniel von Asmuth


-- 
	wat heb je nodig bij een uitzichtloos leven? euthanasie?
	nee, windows.
	van microsoft?
	nee, van glas.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.