https://www.jianshu.com/p/28a0c98027a8
出现如题错误:
libstdc++.so.6: version `GLIBCXX_3.4.20' not found
这个错误是目前的libstdc++.so.6没有对应的GLBCXX造成的。可以通过如下命令查看:
[ss@~]$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
...
GLIBCXX_3.4.13
可以看到,最高版本为3.4.13,没有对应的3.4.20。
通过查看libstdc++.so.6可以看到它链接到了另外一个库
[ss@~]$ ll /usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.13
接下来看看系统还有没有更高版本的lib库
[ss@server1 service]# find / -name libstdc++.so.6*
/usr/lib64/libstdc++.so.6.bak
/usr/lib64/libstdc++.so.6.0.13
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.20
/usr/local/lib64/libstdc++.so.6
/usr/local/lib64/libstdc++.so.6.0.20
刚好还有一个6.0.20版本,查看它的信息
[root@spider-server1 service]# strings /usr/local/lib64/libstdc++.so.6.0.20 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
...
GLIBCXX_3.4.19
GLIBCXX_3.4.20看来这个版本满足我们的需求,重新做链接
$ cp /usr/local/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6.0.20
$ rm -f /usr/lib64/libstdc++.so.6
$ ln -s /usr/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6
链接:https://www.jianshu.com/p/28a0c98027a8