Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!mephisto!eedsp!baud From: baud@eedsp.eedsp.gatech.edu (Kurt Baudendistel) Newsgroups: gnu.misc.discuss Subject: Re: Linking with C libraries. Message-ID: <715@eedsp.eedsp.gatech.edu> Date: 10 Jan 90 15:19:55 GMT References: <1990Jan8.054859.557@oracle.com> <1990Jan8.185253.8145@oracle.com> Reply-To: baud@eedsp.UUCP (Kurt Baudendistel) Organization: Georgia Institute of Technology Lines: 38 In article <1990Jan8.185253.8145@oracle.com> wbailey@oracle.com writes: >What if ... > >confused in free software land Well boys and girls, this subject is actually quite easy to understand. If you USE a GNU product, the OUTPUT of the product is NOT copylefted; if you USE GNU SOURCE CODE in producing anyghing, the produced thing is called a ``derived work'' and it is subject to the copyleft. The consequences of this statement are straightforward: 1. If you use GCC, the output of the compiler is not subject to the copyleft, whether this is object code or an executable file. 2. If you link with or use header files provided by GNU, the derived work is subject to the copyleft. This is no big deal, in general, for use of GCC since there currently isn't a GNU C library (you have to use someone else's library whatever your machine is) and you can easily make your own header files. In the future, just don't distribute linked code and don't use GNU header files and you'll be ok. HOWEVER, this is a big deal for G++ users, since header files are the butter on the bread of libraries---header files are very complex and required when compiling C++ code. Thus, G++ object code is copylefted if you use libg++, the GNU C++ library, since the header files are required. Hopefully, the status of libg++ will change in the future so that G++ can be used as freely as GCC. Bye for now. kurt -- Kurt Baudendistel --- GRA Georgia Tech, School of Electrical Engineering, Atlanta, GA 30332 internet: baud@eedsp.gatech.edu uucp: gatech!gt-eedsp!baud