+ -
当前位置:首页 → 问答吧 → binutils-2.17第一次失败

binutils-2.17第一次失败

时间:2007-11-24

来源:互联网

按照LFS-BOOK-6.3做的

执行这个命令时

make -C ld LIB_PATH=/tools/lib

ld 提示没法辨认选项 --hash-style=gnu

我想是因为新编译的ld不支持这个选项

我的系统是FC6
gcc 4.1.1
make 3.81
ld 2.17.50.0.3
运行config.guess显示
x86_64-unknown-linux-gnu

以下是config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

configure:611: checking host system type
configure:632: checking target system type
configure:650: checking build system type
configure:705: checking for a BSD compatible install
configure:758: checking whether ln works
configure:782: checking whether ln -s works
configure:1867: checking for gcc
configure:1980: checking whether the C compiler (gcc ) works
configure:1996: gcc -o conftest conftest.c 1>&5
configure:2022: checking whether the C compiler (gcc ) is a cross-compiler
configure:2027: checking whether we are using GNU C
configure:2055: checking whether gcc accepts -g
configure:2122: checking for gnatbind
configure:2187: checking whether compiler driver understands Ada
configure:2219: checking how to compare bootstrapped objects
configure:2317: checking for correct version of gmp.h
configure:2330: gcc -c -g -O2 conftest.c 1>&5
configure:2343: checking for MPFR
configure:2356: gcc -o conftest -g -O2 conftest.c -lmpfr -lgmp 1>&5
configure:3407: checking for bison
configure:3447: checking for bison
configure:3486: checking for gm4
configure:3525: checking for flex
configure:3565: checking for flex
configure:3604: checking for makeinfo
configure:3657: checking for expect
configure:3698: checking for runtest
configure:3746: checking for x86_64-unknown-linux-gnu-ar
configure:3821: checking for x86_64-unknown-linux-gnu-as
configure:3896: checking for x86_64-unknown-linux-gnu-dlltool
configure:3927: checking for dlltool
configure:3971: checking for x86_64-unknown-linux-gnu-ld
configure:4046: checking for x86_64-unknown-linux-gnu-lipo
configure:4077: checking for lipo
configure:4121: checking for x86_64-unknown-linux-gnu-nm
configure:4196: checking for x86_64-unknown-linux-gnu-ranlib
configure:4266: checking for x86_64-unknown-linux-gnu-strip
configure:4336: checking for x86_64-unknown-linux-gnu-windres
configure:4367: checking for windres
configure:4411: checking for x86_64-unknown-linux-gnu-objcopy
configure:4486: checking for x86_64-unknown-linux-gnu-objdump
configure:4866: checking for x86_64-unknown-linux-gnu-gcj
configure:4897: checking for gcj
configure:5113: checking for ar
configure:5266: checking for as
configure:5419: checking for dlltool
configure:5473: checking for x86_64-unknown-linux-gnu-dlltool
configure:5504: checking for dlltool
configure:5572: checking for ld
configure:5725: checking for lipo
configure:5779: checking for x86_64-unknown-linux-gnu-lipo
configure:5810: checking for lipo
configure:5878: checking for nm
configure:6031: checking for objdump
configure:6184: checking for ranlib
configure:6337: checking for strip
configure:6490: checking for windres
configure:6544: checking for x86_64-unknown-linux-gnu-windres
configure:6575: checking for windres
configure:6623: checking where to find the target ar
configure:6656: checking where to find the target as
configure:6689: checking where to find the target cc
configure:6722: checking where to find the target c++
configure:6758: checking where to find the target c++ for libstdc++
configure:6794: checking where to find the target dlltool
configure:6827: checking where to find the target gcc
configure:6860: checking where to find the target gcj
configure:6896: checking where to find the target gfortran
configure:6932: checking where to find the target ld
configure:6965: checking where to find the target lipo
configure:6988: checking where to find the target nm
configure:7021: checking where to find the target objdump
configure:7054: checking where to find the target ranlib
configure:7087: checking where to find the target strip
configure:7120: checking where to find the target windres
configure:7181: checking whether to enable maintainer-specific portions of Makefiles
看不懂,有什么意义?


google 搜了好多地方,甚至外国网都找了,但找不到满意的问案,请大家帮帮忙。

作者: yyg_lkpo   发布时间: 2007-11-24

你的 FC 是 64 bit 的?

作者: d00m3d   发布时间: 2007-11-24

[Fedora.Core.6.多国语言.x86_32-64.DVD版].FC-6-x86_64-DVD.iso

CPU是赛扬D,不会是这个不能LFS吧~

作者: yyg_lkpo   发布时间: 2007-11-24

这个hashstyles环境对于binutils的版本有要求的, 需要至少为2.17.50.0.3的版本,似乎高过某个也不行.
你可以这么解决:
LDFLAGS=""
既LDFLAGS为空,试一试

作者: 不开花   发布时间: 2007-11-24

make -C ld LDFLAGS=“” LIB_PATH=/tools/lib
还是不行。

这么说来我的系统不行了?但FC应该很多人用啊~

大家都用哪个发行版LFS?

作者: yyg_lkpo   发布时间: 2007-11-25

我用debian,做LFS很顺利。
--hash-style=gnu选项可以加快动态连接速度,有些发行版是使用这个参数的,比如everest,FC6,ubuntu的feisty.
你的FC6采用了这个选项,而LFS并没采用,binutils,glibc,gcc等在LFS中是不建议优化的。问题可能就出在这里,你换个主系统(例如debian),要么就用livecd.

作者: 不开花   发布时间: 2007-11-25

我想应该可以关闭优化选项的,但我不知道具体怎做。

作者: yyg_lkpo   发布时间: 2007-11-26

引用:
作者: yyg_lkpo
我想应该可以关闭优化选项的,但我不知道具体怎做。
--hash-style=sysv 这样应该可以了

作者: 不开花   发布时间: 2007-11-26