glibc配置错误:yacc /野牛丢失

时间:2018-12-12 02:14:09

标签: linux gcc glibc lfs

我正在遵循LFS的指示,但有一点曲折:我仅遵循第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权限,因此无法在其中创建符号链接。这里有解决方法吗?

1 个答案:

答案 0 :(得分:0)

当前的glibc版本需要安装bison程序(而不是yacc)。您可以下载野牛源并按如下方式构建它们:

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是可选的。显然,您遵循的说明尚未更新以反映对野牛的新要求。