软件更新后 version `GLIBCXX_3.4.15' not found

来源:互联网 发布:淘宝为什么没有比价了 编辑:程序博客网 时间:2024/06/15 01:22

CentOS系统软件升级后(具体升级啥我也忘了),运行qt creator出现问题 /usr/lib/libstdc++.so.6: version ‘GLIBCXX_3.4.15' not found
strings打印共享库中加载部分的信息:

$ strings /usr/lib/libstdc++.so.6.0.13 | grep GLIBCGLIBCXX_3.4GLIBCXX_3.4.1GLIBCXX_3.4.2GLIBCXX_3.4.3GLIBCXX_3.4.4GLIBCXX_3.4.5GLIBCXX_3.4.6GLIBCXX_3.4.7GLIBCXX_3.4.8GLIBCXX_3.4.9GLIBCXX_3.4.10GLIBCXX_3.4.11GLIBCXX_3.4.12GLIBCXX_3.4.13GLIBC_2.0GLIBC_2.3GLIBC_2.4GLIBC_2.1GLIBC_2.1.3GLIBC_2.3.2GLIBC_2.2GLIBCXX_FORCE_NEWGLIBCXX_DEBUG_MESSAGE_LENGTH

果然没有GLIBCXX_3.4.15啊。
升级后,没有更新库文件。
查看libstdc++.so.6

[edemon@CentOS gcc-4.9.1]$ ls -l /usr/lib/libstdc++.so.6lrwxrwxrwx. 1 root root 19 May 15 14:41 /usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.13

他是连接到libstdc++.so.6.0.13的。
查找更新的产生的libstdc++.so.6*系列文件:sudo find / -name libstdc++.so.*
然后发现了更高版本的libstdc++.so.6文件:libstdc++.so.6.0.20
打印它的加载部分信息:

[edemon@CentOS gcc-4.9.1]$ strings /usr/local/GCC-4.9/lib/libstdc++.so.6.0.20 | grep GLIBCGLIBCXX_3.4GLIBCXX_3.4.1GLIBCXX_3.4.2GLIBCXX_3.4.3GLIBCXX_3.4.4GLIBCXX_3.4.5GLIBCXX_3.4.6GLIBCXX_3.4.7GLIBCXX_3.4.8GLIBCXX_3.4.9GLIBCXX_3.4.10GLIBCXX_3.4.11GLIBCXX_3.4.12GLIBCXX_3.4.13GLIBCXX_3.4.14GLIBCXX_3.4.15GLIBCXX_3.4.16GLIBCXX_3.4.17GLIBCXX_3.4.18GLIBCXX_3.4.19GLIBCXX_3.4.20GLIBC_2.3GLIBC_2.0GLIBC_2.1GLIBC_2.1.3GLIBC_2.3.2GLIBC_2.2GLIBCXX_FORCE_NEWGLIBCXX_DEBUG_MESSAGE_LENGTH

含有:GLIBCXX_3.4.15
更新的/usr/lib/libstdc++.so.6连接。

[edemon@CentOS gcc-4.9.1]$ sudo rm /usr/lib/libstdc++.so.6[edemon@CentOS gcc-4.9.1]$ sudo ln -s /usr/local/GCC-4.9/lib/libstdc++.so.6.0.20 /usr/lib/libstdc++.so.6

再启动qtcreator,成功了。

原创粉丝点击