版權(quán)聲明:來自http://furzoom.com/ 歡迎轉(zhuǎn)載,但請注明作者及出處。 https://blog.csdn.net/himayan46/article/details/53322510
使用yum安裝是不可能了,各大倉庫也沒有,只能自己編譯安裝了。
系統(tǒng)為CentOS 6.5,gcc為4.4.7
當(dāng)前最新版為6.2:
wgethttp://ftp.gnu.org/gnu/gcc/gcc-6.2.0/gcc-6.2.0.tar.bz2
也可以自行下載其他版本http://ftp.gnu.org/gnu/gcc
tar jxf gcc-6.2.0.tar.bz2
cd gcc-6.2.0
./contrib/download_prerequisites
經(jīng)過漫長的等待,速度太慢了~
先建一個編譯的目錄
mkdir gcc-build-6.2.0
cd gcc-build-6.2.0/
../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
make -j4
4表示使用4個核心,根據(jù)你的CPU來指定。也可不指定任何參數(shù)。
sudo make install
gcc -v
還有原來的版本,重啟后,再驗證OK
寫個測試的程序測試一下:
g++ -std=c++11 -o testCpp11? testCpp11.cpp
順利編譯成功,執(zhí)行./testCpp11提示:
./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by ./testCpp11)
./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./testCpp11)
./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./testCpp11)
看來動態(tài)庫并沒有更新。
查看動態(tài)庫的版本:
strings /usr/lib64/libstdc++.so.6 | 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
確實沒有更新,默認(rèn)情況下,會安裝在如下目錄:
/usr/local/lib64/libstdc++.so.6.0.22
簡單了,將原來的庫替換為上面的就可以了:
rm -rf /usr/lib64/libstdc++.so.6
ln -s /usr/local/lib64/libstdc++.so.6.0.22 /usr/lib64/libstdc++.so.6
然后再查看動態(tài)庫的版本:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
結(jié)果
GLIBCXX_3.4.22
這就是剛剛安裝的版本,再執(zhí)行一下測試程序./testCpp11,成功!