关于“Error: GLIBC_2.16 not found”的处理方法 - ricket-sjtu/bi028 GitHub Wiki
在运行Python还是R或者其他一些程序的时候,我们常常会碰到类似“Error: GLIBC_2.16 not found”的错误,这是由于操作系统默认安装的GLIBC版本不匹配的问题,一般有两种解决方式,这里我们只介绍第一种方式:
从http://www.rpmfind.net下载该版本的glibc,解压到某个目录,然后设置环境变量LD_LIBRARY_PATH
,继而调用该版本下的ld.so,启动R或者Python即可:
mkdir ~/libenv
cd ~/libenv
wget http://launchpadlibrarian.net/137699828/libc6_2.17-0ubuntu5_amd64.deb
wget http://launchpadlibrarian.net/137699829/libc6-dev_2.17-0ubuntu5_amd64.deb
ar p libc6_2.17-0ubuntu5_amd64.deb data.tar.gz | tar xz
ar p libc6-dev_2.17-0ubuntu5_amd64.deb data.tar.gz | tar xz
wget ftp://195.220.108.108/linux/centos/7.3.1611/os/x86_64/Packages/libstdc++-4.8.5-11.el7.x86_64.rpm
rpm2cpio libstdc++-4.8.5-11.el7.x86_64.rpm | cpio -idmv
cd ~
LD_LIBRARY_PATH="~/libenv/lib/x86_64-linux-gnu:~/libenv/lib64" ~/libenv/lib/x86_64-linux-gnu/ld-2.17.so `which python`
或者
~/libenv/lib/x86_64-linux-gnu/ld-2.17.so --library-path ~/libenv/lib64:~/libenv/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH:~/gcc-5.2.0/lib64:/usr/lib64 `which python`