I met a strange problem when using a .a file built by arm-linux-gcc 2.95.3 with arm-linux-gcc-3.4.3:
[EMAIL PROTECTED] aac]# arm-linux-ld -r -o ../lib/audAACdec.a _lib/mpglib.a build/aactbl.o build/aacdec.o build/aacinit.o build/aacutil.o build/mp4aacHeader.o This works well for me but move _lib/mpglib.a to the end of the command it failed to built: [EMAIL PROTECTED] aac]# arm-linux-ld -r -o ../lib/audAACdec.a build/aactbl.o build/aacdec.o build/aacinit.o build/aacutil.o build/mp4aacHeader.o _lib/mpglib.a arm-linux-ld: ERROR: _lib/mpglib.a uses FPA instructions, whereas ../lib/audAACdec.a does not arm-linux-ld: ERROR: _lib/mpglib.a uses hardware FP, whereas ../lib/audAACdec.a uses software FP File format not recognized: failed to merge target specific data of file _lib/mpglib.a [EMAIL PROTECTED] aac]# Is there anything wrong with the tool chain? Or I made some mistakes here? [EMAIL PROTECTED] aac]# arm-linux-gcc -v Reading specs from /usr/local/3.4.3/bin/../lib/gcc/arm-linux/3.4.3/specs Configured with: /home/bridge/toolchain/crosstool/driscoll-sim/build/arm-linux/gcc-3.4.3-glibc-2.3.2/gcc-3.4.3/configure --target=arm-linux --host=i686-host_pc-linux-gnu --prefix=/usr/local/arm-linux --with-cpu=iwmmxt --enable-cxx-flags=-mcpu=iwmmxt --with-headers=/usr/local/arm-linux/arm-linux/include --with-local-prefix=/usr/local/arm-linux/arm-linux --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long --without-fp Thread model: posix gcc version 3.4.3 Thanks, Kein