libstdc++.so.6: version GLIBCXX_3.4.18' not found
GLIBC_2.14’ not found
libc.so.6: version
在Centos上启动某程序的时候报上面的错误。
分别查看c++,c库包含的版本
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
strings /lib64/libc.so.6 |grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE
均不包含错误提示的版本。
分别安装gcc5.5.0和glibc2.14
wget ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-5.5.0/gcc-5.5.0.tar.gz
tar -zxvf gcc-5.5.0.tar.gz
cd gcc-5.5.0
./configure --prefix=/data/apps/gcc5.5.0 --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j4
make install
wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
tar -zxvf glibc-2.14.tar.gz
cd glibc-2.14
mkdir build
cd build
../configure --prefix=/data/apps/glibc2.14
make -j4
make install
加入环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/apps/gcc5.5.0/lib64:/data/apps/glibc2.14/lib
再启动该程序,问题解决。
另外,按照网上一些blog的方法,我采用软链接的方式,失败,linode主机自动还原的我创建的软链接,不知道这是否是是linode的安全机制。