gcc: error trying to exec ‘as’: execvp: No such file or directory

发布于: 2013年01月15日

九九八十一难之二:

第七章:6.7.1. Installation of Linux API Headers

make header_check

CHK include/linux/version.h
HOSTCC scripts/basic/fixdep
gcc: error trying to exec ‘as’: execvp: No such file or directory
make[1]: *** [scripts/basic/fixdep] Error 1
make: *** [scripts_basic] Error 2

Google到了最接近答案的内容:

 

http://www.linuxquestions.org/questions/linux-from-scratch-13/failed-on-chapter-6-7-1-installation-of-linux-api-headers-make-headers_check-928113/

 

 

除了对方使用LFS-7.0,而我使用LFS-7.2以外,诊断完全一致。

 

可执行文件 as 来自软件包Binutils-2.22,在/tools/bin里面并没有as文件,但存在i686-lfs-linux-gnu-as

在host 环境下执行:

# /tools/bin/i686-lfs-linux-gnu-ld -v

GNU ld (GNU Binutils) 2.22

chroot 到LFS之后执行:

# ./i686-lfs-linux-gnu-ld -v
bash: ./i686-lfs-linux-gnu-ld: No such file or directory

根据上面链接的最终解决方案是从第五章重新开始。无奈….

如果前面那里错了的话,那么应该是 Binutils-2.22 Pass 2

存档,Restart over again.

 

Day-2 跟进:

/tools 目录下可以搜索到连个相关文件:

/tools/bin/i686-lfs-linux-gnu-as

/tools/i686-lfs-linux-gnu/bin/as

但实际上这两个并非二进制文件,而是shell命令。

进入 Binutils-2.22 Pass 2重新make install 一次,发现/tools/bin目录下出现as文件。

结论:严重怀疑5.33. Stripping章节中的下面这行命令删除了不该删的东西:

strip –strip-unneeded /tools/{,s}bin/*

强烈建议同道人士跳过5.33. Stripping章节

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理

浙ICP备18056264号-1