經過測試“GLIBCXX3.4.21 not find”這篇博文解決了我的問題。
以下是安裝步驟:
一、首先查看當前gcc版本
strings /usr/lib/x86_64_linux-gun/libstdc++.so.6|grep GLIBCXX
二、升級安裝GCC
1. 下載最新版本gcc
gcc當前最新版本是5.2,下面是我找到的兩個下載鏡像,下載速度還可以,都可以使用:
wget http://gcc.parentingamerica.com/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
// 或
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
上面兩個鏡像分別位於加拿大和日本,由於gcc本身比較大(100MB左右),所以下載會需要一些時間。
wget http://gcc.parentingamerica.com/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
// 或
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
上面兩個鏡像分別位於加拿大和日本,由於gcc本身比較大(100MB左右),所以下載會需要一些時間。

2. 解壓下載文件
gcc安裝文件下載完成后,執行以下命令解壓文件:
tar -xf gcc-5.2.0.tar.bz2
3. 下載gcc依賴文件和庫
解壓完成后,執行以下命令進入工作目錄:
cd gcc-5.2.0
執行download_prerequisites腳本,下載gcc依賴文件和庫:
./contrib/download_prerequisites
下載安裝gcc所需的mpfr、gmp和mpc文件。
4. 配置安裝gcc
建立一個輸出目錄,編譯時所有生成的中間文件都放到該目錄下:
mkdir gcc-temp
工作目錄切換至輸出目錄,並在其中執行配置和安裝:
cd gcc-temp
執行configure配置安裝文件:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
配置完成后,執行以下命令,編譯gcc:
make
注意:編譯gcc時間較長,我用了近三個小才編譯完成。
編譯完成后,安裝gcc:
make install
安裝完成后還需要替換系統默認的gcc,執行以下命令,查找5.2版本的安裝文件:
ls /usr/local/bin | grep gcc
tar -xf gcc-5.2.0.tar.bz2
3. 下載gcc依賴文件和庫
解壓完成后,執行以下命令進入工作目錄:
cd gcc-5.2.0
執行download_prerequisites腳本,下載gcc依賴文件和庫:
./contrib/download_prerequisites
下載安裝gcc所需的mpfr、gmp和mpc文件。
4. 配置安裝gcc
建立一個輸出目錄,編譯時所有生成的中間文件都放到該目錄下:
mkdir gcc-temp
工作目錄切換至輸出目錄,並在其中執行配置和安裝:
cd gcc-temp
執行configure配置安裝文件:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
配置完成后,執行以下命令,編譯gcc:
make
注意:編譯gcc時間較長,我用了近三個小才編譯完成。
編譯完成后,安裝gcc:
make install
安裝完成后還需要替換系統默認的gcc,執行以下命令,查找5.2版本的安裝文件:
ls /usr/local/bin | grep gcc

執行升級命令:
/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-5.2.0 52
5. 驗證安裝
執行以下命令查看gcc版本:
gcc -v
執行以下命令查看g++版本:
g++ -v
或使用which gcc查看gcc安裝目錄,在安裝目錄下執行-v命令。例如,安裝目錄為/usr/local/bin/gcc:
/usr/local/bin/gcc -v
如果輸出中有類似以下行,說明安裝成功:
gcc 版本 5.2.0 (GCC)

三、更換軟鏈接地址
1.順着gcc的安裝路徑,找到新的libstdc++地址
strings /usr/local/lib64/libstdc++.so.6|grep GLIBCXX
2. 復制鏈接
cp /usr/local/lib64/libstdc++.so.6.0.21 /usr/lib64
cd /usr/lib64
rm -f libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6
$ ll libstdc*
四、檢查
strings /usr/lib64/libstdc++.so.6|grep GLIBCXX