linux下提示/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14‘ not found 解决办法
在安裝node的時候出現報錯,提示/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found?,出現這種問題就是因為編譯庫的編譯器和編譯當前程序的編譯器版本是不一樣的,在具體一點就是因為,當前程序的編譯器的版本是比較低的,只要升級一下就可以了??梢杂萌缦旅畈榭匆幌庐斍癎CC版本:strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
在我的機器上運行結果這樣的:
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_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
并沒有動態庫中要求的GCC版本 “GLIBCXX_3.4.14”,所以需要進行升級一下我們的GCC版本,升級過程如下:
下載新版本的GCC,地址為http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_i386.deb
下載下來之后,用如下命令開始解壓
ar -x libstdc++6_4.7.2-5_i386.deb && tar xvf data.tar.gz
如果你的文件目錄為xxxx(如果不是,把xxx改為相應的目錄即可),依次執行下面命令:
1、進入到 usr/lib/i380-linux-gun目錄下
cd xxx/usr/lib/i380-linux-gun?
2、變成root用戶(如果是root用戶可跳過)
su root
3、拷貝文件
cp libstdc++.so.6.0.17 /usr/lib?
4、進入到/usr/lib
cd /usr/lib?
5、刪除原來的libstdc++.so.6
rm libstdc++.so.6
6、重新建立軟連接
ln libstdc++.so.6.0.17 libstdc++.so.6
到現在升級就完成了。我們在去執行以下下面的命令
strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
現實如下:
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_DEBUG_MESSAGE_LENGTH
現在已經有了3.4.14版本,在執行一邊程序,可以運行了。
歡迎關注公眾號:算法工程師的學習日志
總結
以上是生活随笔為你收集整理的linux下提示/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14‘ not found 解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab自动给变量命名
- 下一篇: linux 安装node出现 libst