|
|
发表于 2006-5-22 15:59:13
|
显示全部楼层
Post by tianzhushan
我升级到FC5.0以后,在编译binutils的时候, 就出现了这个错误。
然后, 我比较了一下
FC5.0上面的 libc.so和
我的另外的机子 RH9.0上面的 libc.so
发现
#cat libc.so
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
OUTPUT_FORMAT(elf32-i386)
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.2 ) )
而RH9.0上面的是
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
OUTPUT_FORMAT(elf32-i386)
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a )
所以,我就把不一样的地方删了, 然后就成功了。
FC5 编译binutils-2.15.94.0.2.2的时候出错:
gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -o ld-new ldgram.o ldlex.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o ldwrite.o ldexp.o ldemul.o ldver.o ldmisc.o ldfile.o ldcref.o eelf_i386.o ei386linux.o ../bfd/.libs/libbfd.a ../libiberty/libiberty.a -ldl
/tools/bin/ld:/usr/lib/gcc/i386-redhat-linux/4.1.0/../../../libc.so: file format not recognized; treating as linker script
/tools/bin/ld:/usr/lib/gcc/i386-redhat-linux/4.1.0/../../../libc.so:5: syntax error
collect2: ld returned 1 exit status
make[2]: *** [ld-new] Error 1
make[2]: Leaving directory `/mnt/lfs/sources/binutils-builds/ld'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/binutils-builds/ld'
make: *** [all-recursive-am] Error 2
make: Leaving directory `/mnt/lfs/sources/binutils-builds/ld'
按照你的方法确实编译通过了 |
|