天天看點

軟體更新後 version `GLIBCXX_3.4.15' not found

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 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.0
GLIBC_2.3
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH      

果然沒有​

​GLIBCXX_3.4.15​

​​啊。

更新後,沒有更新庫檔案。

檢視​​

​libstdc++.so.6​

[edemon@CentOS gcc-4.9.1]$ ls -l /usr/lib/libstdc++.so.6
lrwxrwxrwx. 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 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
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBC_2.3
GLIBC_2.0
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2      
[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      

繼續閱讀