On Tue, Mar 17, 2009 at 08:43:47PM +0000, Dave Korn wrote: >Dave Korn wrote: > >> Anyway, I found that removing "-lm -lc" from the options fixes the build >> problem, and that it makes no difference what version of ld you use. > > Have looked at this a little further. > > First off: the Cygwin C runtime library is basically the Cygwin DLL, and >what we want in normal use is to link against the Cygwin DLL's import library, >(which is /usr/lib/libcygwin.a). > > The libraries /usr/lib/libm.a and /usr/lib/libc.a are helper libraries, used >to bundle up objects as part of the winsup build. They are passed to the >final link that builds the Cygwin DLL. They appear to be some kind of import >library that has been processed by a perl script called speclib that does some >kind of low-level binary munging on them to change symbol names: > >-libcygwin/d000078.o: file format pe-i386 >+libc/d000078.o: file format pe-i386 >-[ 7](sec 0)(fl 0x00)(ty 0)(scl 2) (nx 0) 0x00000000 __head_cygwin1_dll >+[ 7](sec 0)(fl 0x00)(ty 0)(scl 2) (nx 0) 0x00000000 __head_libc > > I don't know what it's all about yet, but as far as I can tell, they aren't >suitable for use outside the actual build system itself and should probably >not need to be installed. It would probably be better if they were replaced >by symlinks to libcygwin.a, as is done for libg.a.
Sheesh. Do you honestly think I would have gone to the effort of creating these libraries when a simple symlink would suffice? Do you really think I don't know about symlinks? cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/