# 安装glibc-2.7时报错
#tar zxvf glibc-2.7.tar.gz #cd glibc-2.7 #mkdir build #cd build #../configure --prefix=/usr …… checking for sed... sed checking version of sed... 4.2.1, ok checking for autoconf... autoconf checking whether autoconf works... yes configure: error: *** These critical programs are missing or too old: as ld *** Check the INSTALL file for required versions.
原因是版本校验过不去,两种方案,一是调整系统依赖的版本,可能需要升版本也可能需要降版本,二是绕过校验,可顺利编译,但存在未知风险,下面是采用第二种方案,看如何绕过版本校验。
先查看系统版本
# ld -v GNU ld version 2.20.51.0.2-5.28.4.alios6 20091009
再查看glibc-2.7的配置脚本中对版本的限制情况
脚本路径:../glibc-2.7/configure
和问题相关的脚本内容:搜索$ld --version
……
# Found it, now check the version.
{ echo "$as_me:$LINENO: checking version of $AS" >&5
echo $ECHO_N "checking version of $AS... $ECHO_C" >&6; }
ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* ([0-9]*.[0-9.]*).*$/1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*|2.2[0-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*)
……
以上红字部分为追加的内容,原来要求的版本至少是2.13,所以一直过不去
同理搜索$AS --version
……
{ echo "$as_me:$LINENO: checking version of $AS" >&5
echo $ECHO_N "checking version of $AS... $ECHO_C" >&6; }
ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* ([0-9]*.[0-9.]*).*$/1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*|2.2[0-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*)
……
修改完毕后保存配置脚本。
重新执行编译命令
#../configure --prefix=/usr …… checking for kernel header at least 2.4.0... ok checking for symlinks in /usr/include... ok checking for old glibc 2.0.x headers... no checking whether -fPIC is default... no configure: creating ./config.status config.status: creating config.make config.status: creating Makefile config.status: creating config.h config.status: executing default commands
编译安装成功
#make
#make install
安装完毕!
查看支持的版本:
#strings /usr/lib64/libstdc++.so.6 | grep GLIBC GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBC_2.2.5 GLIBC_2.3 GLIBC_2.4 GLIBC_2.3.2 GLIBCXX_FORCE_NEW GLIBCXX_DEBUG_MESSAGE_LENGTH
- 上一篇: 服务器安全加固常用项
- 下一篇: 「砥砺阅读」之21:《暗访十年(五)》
评论
今日新鲜事
回复文章不错支持一下,非常喜欢