我正在按照以下指示进行操作LFS http://www.linuxfromscratch.org/lfs/view/stable/index.html但有一点不同:我只遵循第 5 节 - 构建临时系统的部分内容,以便我可以构建自己的 GCC,原因是这是一台工作机器,而且我没有 root 权限。一切顺利,直到我遇到配置错误glibc
:
configure: error:
*** These critical programs are missing or too old: as GNU ld make bison compiler
*** Check the INSTALL file for required versions.
经过一番调查,发现我不满足 LFS 所需的条件:
/usr/bin/yacc is a symbolic link to bison or a small script that executes bison.
结果发现没有这个文件/usr/bin/yacc
(虽然bison
确实存在)。但是,因为我在工作中没有 root 权限,所以无法在那里创建符号链接。这里有解决方法吗?
当前的 glibc 版本需要 bison 程序来构建(而不是 yacc)。您可以下载 bison 源代码并像这样构建它们:
wget https://ftp.gnu.org/gnu/bison/bison-3.2.tar.gz
tar xf bison-3.2.tar.gz
cd bison-3.2
./configure --prefix=$HOME/install
make
make install
然后你可以把$HOME/install/bin
命令搜索路径上的目录:
PATH=$HOME/install/bin:$PATH
此时,glibc的configure
脚本应该选择该野牛版本。
旧版本的 glibc(2.27 之前)将 bison 生成的文件作为源的一部分提供,因此 bison 是可选的。显然,您所遵循的说明尚未更新以反映野牛的新要求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)