delorie.com/archives/browse.cgi | search |
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. cheers, DaveK -- 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/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |