前因
最近在編譯leveldb時(shí)碟刺,碰到一個(gè)問題:GLIBCXX_3.4.20 not found,
這個(gè)提示已經(jīng)比較明顯了半沽,是本地缺少重要的二進(jìn)制LIB庫文件。
本地的二進(jìn)制文件一般在/usr/lib64
下面者填,因?yàn)槲沂褂玫氖?4位系統(tǒng)做葵。
處理
查看本地系統(tǒng)的 GLIBCXX_版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
結(jié)果:
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_DEBUG_MESSAGE_LENGTH
剛好到 3.4.19占哟,就是沒有 3.4.20
三種解決思路
1.在本機(jī)上找
如果找到的話,就可以直接使用
find / -name "libstdc++.so*"
找到libstdc++.so.6.0.25
這個(gè)包榨乎。
先備份原來的文件,如果新的組件有問題蜜暑,就撲街了,再將找到的文件放入/usr/lib64
隐绵,重新建立軟鏈接。
先備份原來的包依许,
mv libstdc++.so.6 ~/libstdc++.so.6.bak
ln -snf libstdc++.so.6.0.25 libstdc++.so.6
2.手動下載
系統(tǒng)中沒有的話,只能自己下載了
wget https://adbin.top/packages/lib64.tar.gz
可以自動選擇缺失部份:
https://pkgs.org/download/libstdc++.so.6
3.yum 安裝缺失文件
sh-4.2# yum provides libstdc
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
* base: download.cf.centos.org
* extras: download.cf.centos.org
* updates: download.cf.centos.org
No matches found
我的小站同步更新博客
https://liukay.com