+ -
当前位置:首页 → 问答吧 → [help]lfs6.3 binutils-2.17编译出错

[help]lfs6.3 binutils-2.17编译出错

时间:2007-12-04

来源:互联网

卡死在6.11了
前面的glibc test成功,adjust toolchain也成功的
我不知道什么原因
lfs上的mail list好像说是perl的问题
但是编译perl的时候并没有出错呀
望各位大侠指教

make[3]: Leaving directory '/sources/binutils-build/bfd/po'
make[3]: Entering directory '/sources/binutils-build/bfd/po'
make[3]: Nothing to be done for 'info'.
make[3]: Leaving directory '/sources/binutils-build/bfd/po'
make[3]: Entering directory '/sources/binutils-build/bfd'
make[3]: Nothing to be done for 'info-am'.
make[3]: Leaving directory '/sources/binutils-build/bfd'
make[2]: *** [info-recursive] Error 1
make[2]: Leaving directory '/sources/binutils-build/bfd'
make[1]: *** [all-bfd] Error 2

作者: store88   发布时间: 2007-12-04

我操作capter6的命令如下
引用:
cd /sources/linux-2.6.22.14
make mrproper
make headers_check
make INSTALL_HDR_PATH=dest headers_install
cp -rv dest/include/* /usr/include
cd /sources/man-pages-2.68
make install
cd /sources/glibc-2.5.1(libiconv not need yet)
tar -xvf /sources/glibc-libidn-2.5.1.tar.gz
mv /sources/glibc-libidn-2.5.1 /sources/glibc-2.5.1/libidn
sed -i '/vi_VN.TCVN/d' localedata/SUPPORTED
sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.2 -o|' scripts/test-installation.pl
sed -i 's|@BASH@|/bin/bash|' elf/ldd.bash.in
mkdir -pv /sources/glibc-build
cd /sources/glibc-build
../glibc-2.5.1/configure --prefix=/usr --disable-profile --enable-add-ons --enable-kernel=2.6.0 --libexecdir=/usr/lib/glibc
make
make -k check 2>&1 | tee glibc-check-log
grep Error glibc-check-log
touch /etc/ld.so.conf
make install
mkdir -pv /usr/lib/locale
make localedata/install-locales
localedef -i de_DE -f UTF-8 de_DE.UTF-8
localedef -i de_DE -f ISO-8859-1 de_DE
localedef -i de_DE -f ISO-8859-15 de_DE@euro
localedef -i en_US -f UTF-8 en_US.UTF-8
localedef -i en_US -f ISO-8859-1 en_US
localedef -i es_ES -f UTF-8 es_ES.UTF-8
localedef -i es_ES -f ISO-8859-1 es_ES
localedef -i es_ES -f ISO-8859-15 es_ES@euro
localedef -i fr_FR -f UTF-8 fr_FR.UTF-8
localedef -i fr_FR -f ISO-8859-1 fr_FR
localedef -i fr_FR -f ISO-8859-15 fr_FR@euro
localedef -i it_IT -f UTF-8 it_IT.UTF-8
localedef -i it_IT -f ISO-8859-1 it_IT
localedef -i it_IT -f ISO-8859-15 it_IT@euro
localedef -i ja_JP -f EUC-JP ja_JP.EUC-JP
localedef -i ja_JP -f UTF-8 ja_JP.UTF-8
localedef -i ko_KR -f EUC-KR ko_KR.EUC-KR
localedef -i ko_KR -f UTF-8 ko_KR.UTF-8
localedef -i ru_RU -f KOI8-R ru_RU.KOI8-R
localedef -i ru_RU -f UTF-8 ru_RU.UTF-8
localedef -i ru_RU -f ISO-8859-5 ru_RU
localedef -i zh_CN -f UTF-8 zh_CN.UTF-8
localedef -i zh_CN -f GB2312 zh_CN
localedef -i zh_CN -f GB18030 zh_CN.GB18030
localedef -i zh_CN -f GBK zh_CN.GBK
localedef -i zh_HK -f UTF-8 zh_HK.UTF-8
localedef -i zh_HK -f BIG5-HKSCS zh_HK
localedef -i zh_SG -f UTF-8 zh_SG.UTF-8
localedef -i zh_SG -f GBK zh_SG.GBK
localedef -i zh_SG -f GB2312 zh_SG
localedef -i zh_TW -f EUC-TW zh_TW.EUC-TW
localedef -i zh_TW -f UTF-8 zh_TW.UTF-8
localedef -i zh_TW -f BIG5 zh_TW
cat > /etc/nsswitch.conf << "EOF"
# Begin /etc/nsswitch.conf
passwd: files
group: files
shadow: files
hosts: files dns
networks: files
protocols: files
services: files
ethers: files
rpc: files
# End /etc/nsswitch.conf
EOF
tzselect
cp -v --remove-destination /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
cat > /etc/ld.so.conf << "EOF"
# Begin /etc/ld.so.conf
/usr/local/lib
/opt/lib
# End /etc/ld.so.conf
EOF
mv -v /tools/bin/{ld,ld-old}
mv -v /tools/$(gcc -dumpmachine)/bin/{ld,ld-old}
mv -v /tools/bin/{ld-new,ld}
ln -sv /tools/bin/ld /tools/$(gcc -dumpmachine)/bin/ld
gcc -dumpspecs | sed -e 's@/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g' -e '/\*startfile_prefix_spec:/{n;s@.*@/usr/lib/ @}' -e '/\*cpp:/{n;s@$@ -isystem /usr/include@}' > `dirname $(gcc --print-libgcc-file-name)`/specs
echo 'main(){}' > dummy.c
cc dummy.c -v -Wl,--verbose &> dummy.log
readelf -l a.out | grep ': /lib'
grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log
grep -B1 '^ /usr/include' dummy.log
grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g'
grep "/lib/libc.so.6 " dummy.log
grep found dummy.log
rm -v dummy.c a.out dummy.log
expect -c "spawn ls"
mkdir -v /sources/binutils-build
cd /sources/binutils-build
../binutils-2.17/configure --prefix=/usr --enable-shared
make tooldir=/usr
make check
make tooldir=/usr install
cp -v ../binutils-2.17/include/libiberty.h /usr/include
我在6.8开始用了优化参数
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"

不知道跟这个有没有关系
以后再试试
如果有人解答 那真是太感谢了

作者: store88   发布时间: 2007-12-04

binutils-2.17 及以前的版本用任何优化参数都是必死无异的

作者: d00m3d   发布时间: 2007-12-04

那2.18呢
------------
还有我只是把glibc优化了 binutils不优化也编译不通过
-------------

作者: store88   发布时间: 2007-12-04

虽然我试过 2.18 没问题,但并不鼓励,手册不是建议建构 toolchain (binutils/glibc/gcc)时不要任何优化的吗?

作者: d00m3d   发布时间: 2007-12-04