From: Dean D. <dea...@ad...> - 2003-03-21 02:38:29
|
I have happily been using mingw to link a closed-source library built with MSVC++ into my project. However, the vendor of this library has recently switched from linking against LIBMSVCRT.LIB to LIBC.LIB and I can not build with the new releases. Is there any way to persuade this thing to work again with mingw? Searches on the web and through the mailing list archive seem to indicate that LIBC.LIB can make life difficult (as it is for me right now). What isn't clear is if "difficult" actually means just "difficult" or "impossible". :-/ Details are below... Thanks, Dean. OS = Win2K. $ gcc -v Reading specs from c:/msys/MinGW/bin/../lib/gcc-lib/mingw32/3.2.2/specs Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --host=mingw32 --target=mingw32 --prefix=/mingw --enable-threads --disable-nls --enable-languages=c++,f77,objc --disable-win32-registry --disable-shared --enable-sjlj-exceptions Thread model: win32 gcc version 3.2.2 (mingw special 20030208-1) $ gcc -o bar.exe bar.c libfoo-5.30-libc.a -lwsock32 libfoo-5.30-libc.a(./zobj.nt/init.o)(.text+0xb3):init.c: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. <snip lots more of the same> Warning: .drectve `%.*s' unrecognized <snip 29 more lines of the same> libfoo-5.30-libc.a(nettools.obj)(.text+0x427):I:/icore\util\nett: undefined reference to `errno' libfoo-5.30-libc.a(nettools.obj)(.text+0x43c):I:/icore\util\nett: undefined reference to `errno' libfoo-5.30-libc.a(nettools.obj)(.text+0x47f):I:/icore\util\nett: undefined reference to `errno' libfoo-5.30-libc.a(nettools.obj)(.text+0x493):I:/icore\util\nett: undefined reference to `errno' libfoo-5.30-libc.a(nettools.obj)(.text+0x4cf):I:/icore\util\nett: undefined reference to `errno' libfoo-5.30-libc.a(nettools.obj)(.text+0x4e4):I:/icore\util\nett: more undefined references to `errno' follow fu000002.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' fu000003.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' fu000004.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' fu000005.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' fu000006.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' fu000007.o(.idata$3+0xc): more undefined references to `libmsvcrt_a_iname' follow nmth000000.o(.idata$4+0x0): undefined reference to `_nm___iob' nmth000001.o(.idata$4+0x0): undefined reference to `_nm___pctype' nmth000009.o(.idata$4+0x0): undefined reference to `_nm____mb_cur_max' |
From: Earnie B. <ear...@ya...> - 2003-03-21 11:52:42
|
Does that mean that you have to use libc.a? Isn't LIBC.LIB just another name for MSVCRT.LIB? What DLL is LIBC.LIB an import for? Earnie. Dean Davis wrote: > I have happily been using mingw to link a closed-source library built > with MSVC++ into my project. However, the vendor of this library has > recently switched from linking against LIBMSVCRT.LIB to LIBC.LIB and > I can not build with the new releases. Is there any way to persuade > this thing to work again with mingw? Searches on the web and through > the mailing list archive seem to indicate that LIBC.LIB can make life > difficult (as it is for me right now). What isn't clear is if > "difficult" actually means just "difficult" or "impossible". :-/ > Details are below... > > Thanks, > Dean. > > OS = Win2K. > > $ gcc -v > Reading specs from c:/msys/MinGW/bin/../lib/gcc-lib/mingw32/3.2.2/specs > Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as > --host=mingw32 --target=mingw32 --prefix=/mingw --enable-threads > --disable-nls --enable-languages=c++,f77,objc --disable-win32-registry > --disable-shared --enable-sjlj-exceptions > Thread model: win32 > gcc version 3.2.2 (mingw special 20030208-1) > > $ gcc -o bar.exe bar.c libfoo-5.30-libc.a -lwsock32 > libfoo-5.30-libc.a(./zobj.nt/init.o)(.text+0xb3):init.c: variable '_iob' > can't be auto-imported. Please read the documentation for ld's > --enable-auto-import for details. > <snip lots more of the same> > Warning: .drectve `%.*s' unrecognized > <snip 29 more lines of the same> > libfoo-5.30-libc.a(nettools.obj)(.text+0x427):I:/icore\util\nett: > undefined reference to `errno' > libfoo-5.30-libc.a(nettools.obj)(.text+0x43c):I:/icore\util\nett: > undefined reference to `errno' > libfoo-5.30-libc.a(nettools.obj)(.text+0x47f):I:/icore\util\nett: > undefined reference to `errno' > libfoo-5.30-libc.a(nettools.obj)(.text+0x493):I:/icore\util\nett: > undefined reference to `errno' > libfoo-5.30-libc.a(nettools.obj)(.text+0x4cf):I:/icore\util\nett: > undefined reference to `errno' > libfoo-5.30-libc.a(nettools.obj)(.text+0x4e4):I:/icore\util\nett: more > undefined references to `errno' follow > fu000002.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' > fu000003.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' > fu000004.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' > fu000005.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' > fu000006.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname' > fu000007.o(.idata$3+0xc): more undefined references to > `libmsvcrt_a_iname' follow > nmth000000.o(.idata$4+0x0): undefined reference to `_nm___iob' > nmth000001.o(.idata$4+0x0): undefined reference to `_nm___pctype' > nmth000009.o(.idata$4+0x0): undefined reference to `_nm____mb_cur_max' > > > ------------------------------------------------------- > This SF.net email is sponsored by: Tablet PC. Does your code think in > ink? You could win a Tablet PC. Get a free Tablet PC hat just for > playing. What are you waiting for? > http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |