Glibc 2.7 配置错误程序太旧
Glibc 2.7 configure error programs too old
当我在R中加载GenomicFeatures包时,它会弹出一条错误消息:
Loading required package: IRanges
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/home/caohf/R/x86_64-unknown-linux-gnu-library/2.15/IRanges/libs/IRanges.so':
/lib64/libc.so.6: version `GLIBC_2.7' not found (required by /home/caohf/R/x86_64-unknown-linux-gnu-library/2.15/IRanges/libs/IRanges.so)
Error: package ‘IRanges’ could not be loaded
所以我想安装 glibc2.7,源代码是从这个网站下载的。
我将 soure 配置为非根:
mkdir build
cd build
../configure --prefix=/home/cao/bin
屏幕上出现配置错误:
正在检查构建系统类型...x86_64-unknown-linux-gnu
正在检查主机系统类型...x86_64-unknown-linux-gnu
配置:运行附加组件 NPTL
的配置片段 正在检查系统处理器目录...sysdeps/x86_64/elf nptl/sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux/wordsize-64 nptl/sysdeps/unix/sysv/linux nptl/sysdeps/pthread sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet nptl/sysdeps/unix/sysv sysdeps/unix/sysv sysdeps/unix/x86_64 nptl/sysdeps/unix sysdeps/unix sysdeps/posix sysdeps/x86_64/FPU nptl/sysdeps/x86_64 sysdeps/x86_64 sysdeps/wordsize-64 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic 检查与 BSD 兼容的安装.../usr/bin/install -c
检查 ln -s 是否正常工作...是的
检查海湾合作委员会...海湾合作委员会
正在检查目标文件的后缀...o
检查我们是否正在使用 GNU C 编译器...是的
检查 GCC 是否接受 -g...是的
检查 gcc 选项以接受 ISO C89...不需要
正在检查如何运行 C 预处理器...海湾合作委员会 -E
正在检查 G++...G++
检查我们是否正在使用 GNU C++编译器...是的
检查 G++ 是否接受 -g...是的
正在检查兰利布...兰利布
检查/usr/libexec/binutils220/as 是否是 GNU 作为...是的
检查 ld 是否是 GNU ld...是的
check for/usr/libexec/binutils220/as.../usr/libexec/binutils220/as
正在检查/usr/libexec/binutils220/as...2.20.51.0.2,坏
正在检查LD...
LD 检查LD的版本...2.17.50.0.6,好的
检查 pwd.../bin/pwd
检查海湾合作委员会...海湾合作委员会
检查 GCC 的版本...4.4.6, 好的
正在检查 gnumake...不
正在检查 gmake...gmake检查版本的gmake...3.81,正常
正在检查 gnumsgfmt...不
检查 GMSGFMT...不
正在检查消息...味精
正在检查消息的生成...0.14.6,还行
正在检查信息...不
正在检查 sed...塞德
正在检查 SED 的版本...4.1.5,好的
正在检查自动确认...自动会议
检查自动配置是否有效...是的
配置:错误:
这些关键程序丢失或太旧:如
检查安装文件中的所需版本。
以下是在 INSTALL 文件(以及我的系统中的版本(中进行编译的推荐工具:
1 GNU 使 3.79 或更高版本
我的系统:
GNU make 3.81
2 GCC 3.4 或更高版本,建议
使用 GCC 4.1我的系统:
GCC 版本 4.4.620110731 (Red Hat 4.4.6-3( (GCC(
3 GNU binutils 2.15 或更高版本
我不知道如何检查 binutils 的版本,但是
as -v
ld -v
GNU 汇编程序版本 2.17.50.0.6-12.el5(x86_64-redhat-linux( 使用 BFD 版本 2.17.50.0.6-12.el5 20061020
GNU ld 版本 2.17.50.0.6-12.el5 20061020
4 GNU texinfo 3.12f
我也不是版本?需要帮助
5 GNU awk 3.0 或更高版本
我的系统:
GNU Awk 3.1.5
6 Perl 5
矿山:
这是 perl,v5.10.1 (*( 为 x86_64-linux-thread-multi 构建
的
7 GNU sed 3.02 或更高版本
矿山:
GNU sed 版本 4.1.5
8 GNU autoconf 2.53 或更高版本
矿山:
autoconf (GNU Autoconf( 2.59
9 GNU 获取文本 0.10.36 或更高版本矿山:
gettext (GNU gettext-runtime( 0.14.6
我在 :
CentOS 版本 5.4 (最终版(
Linux iodell-01 2.6.18-164.6.1.el5
我是否必须安装较新版本的glibc,恐怕系统的软件包对于较新的软件包来说太旧了。我怎么能弄清楚?谢谢<</p>
我遇到了类似的问题。问题出在 configure.in 文件中的 as,ld 正则表达式上。
知道我有 2.20,肯定是>2.15(根据 INSTALL 文件(,我从
[2.1[3-9]*]
从技术上讲,我应该修复该正则表达式,但不幸的是,这样的事情不起作用
[2.20*]
由于我不想浪费太多时间,因此暂时对其进行了注释并从配置文件中删除了检查。稍后将使用适当的正则表达式更新帖子。
使用 Debian(稳定分支(时,我的系统上遇到过很多次这个问题,众所周知,它的软件包已经过时。据我所知,唯一的方法是升级glibc,这意味着升级整个系统。如果你有很多时间,你可以升级 JUST glibc,但这通常比它的价值更麻烦,因为新版本可能有更新的符号,而旧的符号可能已被重新定位。希望这有帮助。
我做了上述操作,没有解决问题,然后做了以下操作,现在工作:
- 编辑 ./configure 脚本本身(如果您愿意,可以编辑 ./configure.in - 或者 - 以及上面提到的 configure.in(,找到以下 CASE 行(在我的 GLIBC2.7 上,这些行位于 4530 和 4596(:
案例 $ac_prog_version in
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
将以下内容添加到其中以允许你的版本:
2.2[0-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
同时进行AS和LD检查(上面提到的行号(,我做到了,我的也工作了。
祝你好运,希望这有帮助
H
- C++程序错误:malloc():内存损坏
- C++ Windows 凭据提供程序错误屏幕
- 程序错误地读取了二进制文件的一个字节
- Cmake无法在qt-creater/collect2上编译简单的测试程序:错误:ld
- C 程序错误
- SDL 应用程序错误:“if”之前应为非限定 id
- C++程序错误
- Apache IGNITE编译ODBC驱动程序错误
- 二进制搜索树操作程序错误:分割故障(核心倾倒)
- Cygwin1.dll c++ 应用程序错误
- 无法编译任何C++程序;错误:未知类型名称'uint8_t'
- 带有结构和指针的程序错误(结构,C++)
- 矩阵运算C++运算符重载程序错误
- ilmerge后C /CLI应用程序错误
- SDL 2.0-无效的呈现程序错误
- 如何使用 C# 在网页 asp.net 显示 C 程序错误
- OPENCV:image_proc中的 PCA 应用程序错误
- C++程序错误 - 虚拟析构函数
- LNK2020 C 程序错误
- 程序错误,由于在VS2010中使用std::unique_ptr