升級centos 6.8 服務器的gcc

背景需求

在有些項目需要用到c++11的特性的時候,就要求gcc到4.8版本。而centos 6.8 系統帶的gcc是4.4版本。故而需要升級。本次升級採用下載源碼編譯安裝,操作稍稍複雜和耗時。

注意:下方步驟僅僅在centos 6.8版本上測試過,其他linux發行版尚未測試。

編譯安裝步驟

1、下載源碼,下載地址:http://ftp.gnu.org/gnu/gcc/gcc-4.8.2.tar.bz2

2、解壓,

tar -vxf gcc-4.8.2.tar.bz2

3、進入gcc-4.8.2目錄,執行下面命令下載供編譯需求的依賴項

cd gcc-4.8.2 
./contrib/download_prerequisites

4.、創建一個編譯目錄,並進入到該目錄下,

mkdir gcc-build
cd gcc-build

5、生成Makefile文件:

../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

6、編譯:

make -j4

 此過程很慢很慢,請耐心等待。
實測過: 2020/06/11 17:30 - 2020/06/11 18:40 , 耗時一小時10分鐘。
-j4選項是make對多核處理器的優化,如果不成功請使用 make

7、安裝,執行 

make install

8、查看版本,檢查是否已升級到2.14版本

gcc -v

9、修改軟連接
在/usr/local/lib64/目錄下查看是否存在libstdc++.so.6.0.18文件,如果不存在,則查找下
運行 find / -name “libstdc++.so*”這條命令的時候,看清楚 /usr/local/lib64/libstdc++.so.6.0.18

cp /usr/local/lib64/libstdc++.so.6.0.18 /usr/lib64
ln -s /usr/lib/libstdc++.so.6.0.18 /usr/lib/libstdc++.so.6

這兩條命令的時候要把來的替換爲libstdc++.so.6.0.18

升級後查看下中文是否亂碼、時間是否準確
建立完軟連接,如果實在沒有起作用,可以重啓服務器試試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章