当我在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,源代码是从site下载的。
我将源配置为非root用户:
mkdir build
cd build
../configure --prefix=/home/cao/bin
屏幕上出现配置错误:
检查构建系统类型... x86_64-unknown-linux-gnu
检查主机系统类型... x86_64-unknown-linux-gnu
configure:为附加组件nptl运行configure fragment 检查sysdep dirs ... 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 / 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是否有效...是的 检查gcc ... gcc
检查目标文件的后缀... o
检查我们是否使用GNU C编译器...是的 检查gcc是否接受-g ...是
检查gcc选项以接受ISO C89 ...无需任何
检查如何运行C预处理器... gcc -E
检查g ++ ... g ++
检查我们是否使用GNU C ++编译器...是的 检查g ++是否接受-g ...是
检查ranlib ... ranlib
检查/ usr / libexec / binutils220 / as是否为GNU ...是的 检查ld是否为GNU ld ...是的 检查/ usr / libexec / binutils220 / as ... / usr / libexec / binutils220 / as
检查/ usr / libexec / binutils220 /的版本为...... 2.20.51.0.2,坏了 检查ld ... ld
检查ld的版本... 2.17.50.0.6,确定
检查pwd ... / bin / pwd
检查gcc ... gcc
检查gcc的版本...... 4.4.6,确定
检查gnumake ...没有
检查gmake ... gmake检查gmake的版本... 3.81,确定
检查gnumsgfmt ...没有
检查gmsgfmt ...没有
检查msgfmt ... msgfmt
检查msgfmt的版本... 0.14.6,确定
检查makeinfo ...没有
检查sed ... sed
检查sed的版本... 4.1.5,确定
检查autoconf ... autoconf
检查autoconf是否有效...是的 配置:错误:
这些关键程序缺失或太旧:作为
检查INSTALL文件中是否有所需版本。
以下是在INSTALL文件(以及我系统中的版本)中编译的推荐工具:
1 GNU使3.79或更新版本 我的系统:
GNU Make 3.81
2 GCC 3.4或更新,GCC 4.1推荐
我的系统:
gcc版本4.4.6 20110731(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
矿:
这是为x86_64-linux-thread-multi构建的perl,v5.10.1(*)
7 GNU sed 3.02或更新版本 矿:
GNU sed版本4.1.5
8 GNU autoconf 2.53或更高版本
我的:
autoconf(GNU Autoconf)2.59
9 GNU gettext 0.10.36或更高版本 我的:
gettext(GNU gettext-runtime)0.14.6
我在:
CentOS版本5.4(最终版)
Linux iodell-01 2.6.18-164.6.1.el5
我是否必须安装较新版本的glibc,恐怕系统的软件包对于较新版本来说太旧了。 我怎么能搞清楚?谢谢
答案 0 :(得分:1)
我遇到了类似的问题。问题在于configure.in文件中as,ld的正则表达式。
知道我有2.20,肯定是> 2.15(根据INSTALL文件),因此我从
更新了正则表达式[2.1[3-9]*]
我评论了as ld的版本检查。从技术上讲,我应该修复该正则表达式,但是不幸的是,这样的事情不起作用
[2.20*]
由于我不想浪费太多时间,因此暂时将其评论并从配置文件中删除该检查。稍后将使用适当的正则表达式更新该帖子。
答案 1 :(得分:0)
当我使用Debian(稳定分支)时,我的系统上出现了这个问题,这个问题已经过时了。据我所知,唯一的方法是升级glibc,这意味着升级整个系统。如果你有很多时间可以升级JUST glibc,但这通常比它的价值更麻烦,因为新版本可能有更新的符号,旧的符号可能已被重新定位。希望这会有所帮助。