Mail Archives: cygwin/1999/07/06/17:29:11
John Garrison <jeg AT visi DOT net> writes:
> >
> > $ i586-cygwin32-nm libIMG.a | grep IMG_Load_RW
> >
> > (or, i386-mingw32-nm if you're using Mingw cross-compiler).
> >
> > shows what?
> >
>
> [bin]# ./i586-mingw32-nm /usr/win32/lib/libIMG.a | grep IMG_Load_RW
> ./i586-mingw32-nm: IMG.c: File format not recognized
> ./i586-mingw32-nm: IMG_tif.c: File format not recognized
> ./i586-mingw32-nm: IMG_xxx.c: File format not recognized
> ./i586-mingw32-nm: IMG_bmp.c: File format not recognized
>
> What does it mean file format not recognized? it's C code, compiled for wind
> ows
> with mingw32. I would say maybe there were some Linux object files in the
> directory that wouldn't have gotten recompiled, but that isn't likely, it wou
> ld
> be all the objects or nothing, make clean wipes out all .o files and make
> creates all .o files.
That means that libIMG.a was NOT compiled for windows32 target, but
possibly for your host (``nm libIMG.a'' then would show the symbols
instead).
libIMG.a cannot be a host library, but rather has to be a target
library. Until that is fixed, nothing else will work. Same goes for
*all* the object files and archives on the command line you're using.
Make sure you're using the cross-compiler to build the libIMG.a, and
make sure the cross-compiler is using the cross assembler, and that
you're using cross-tools (ix86-mingw32-ar, ix86-mingw32-ranlib) to
build the archive. This is fundamental to building anything in a
cross-development environment.
Regards,
Mumit
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
- Raw text -