Hello,
I am running cygwin 1.5.21-1 on a Windows XP64 system, and am having
a problem with AR on the system, where AR reports "File format not recognized"
when I attempt to link what appears to be a valid object. Here is an example:
$ make -n endian.o
echo "-- C compiling -O3 endian.c --"
gcc -Wall -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -O3 -I/cygdrive/c/tree/dbc/incl
ude -I/cygdrive/c/tree/root/include -I/usr/local/include -I/usr/lib/gcc-lib/i686
-pc-cygwin/2.95.3-*/include -c endian.c
$ make endian.o
-- C compiling -O3 endian.c --
endian.c: In function `swapped_read32':
endian.c:129: warning: implicit declaration of function `_read'
endian.c: In function `swapped_write64':
endian.c:355: warning: implicit declaration of function `_write'
$ make -n
ar -ar -o /cygdrive/c/tree/dbc/lib/libendian.a endian.o
$ make
ar: endian.o: File format not recognized
make: *** [/cygdrive/c/tree/dbc/lib/libendian.a] Error 1
$ objdump -a endian.o
endian.o: file format pe-i386
endian.o
Any ideas? I've tried several invocations of ar and I get the same result.