Cent OS 7.6的gcc升級的操作方法,親測可用一週的研究成果

本人Linux小白一枚,因為學習需要不得已摸索相關技能,由於無大師指點,走了很多彎路,在網上找了一些教程,但是因為缺乏基本知識無法理解其中的含義而無法達到活學活用,最終都沒能成功實現。出現轉機的是在某個群組裡問了一個專業人士指點迷津,最終才恍然大悟,成功地打通了這個方法。

Cent OS 7.6的gcc升級的操作方法,親測可用一週的研究成果

本著無私分享的角度,我把親測可用的方法貼文給大家,為小白們指明一條道路,這樣達到事半功倍。其中現在看來方法也比較簡單(PS:理解的東西才會變得容易)。

1、cat /etc/redhat-releas

查看當前的系統版本

2、 gcc -v

查看當前的gcc版本

3、yum -y install wget bzip2 gcc gcc-c++ glibc-headers

檢查安裝升級用到的一些工具

4、wget -c -P /opt/tmp/ https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-6.4.0/gcc-6.4.0.tar.gz

下載gcc-6.4.0到/opt/tmp/下,即為我們的安裝路徑,其他版本的可以將gcc版本進行替換。

5、cd /opt/tmp/

切換自下載和安裝目錄下

6、tar -zxvf gcc-6.4.0.tar.gz

解壓安裝包

7、cd gcc-6.4.0

打開解壓文件

8、./contrib/download_prerequisites

下載gmp mpfr mpc等供編譯需求的依賴項,All prerequisites downloaded successfully即為成功。

9、 mkdir build

在/opt/tmp/新建文件夾

10、cd build

打開新建文件夾

11、../configure --prefix=/usr/local/gcc-6.4.0 --enable-bootstrap --enable-checking=release --enable-languages=c,c++ --disable-multilib

編譯設置,這裡版本號靈活替換

12、make

編譯,這裡耗時至少1h以上,可以去幹別的了

13、make install

安裝

14、gcc -v

查看安裝的版本號,此時還是顯示顯示舊版

Cent OS 7.6的gcc升級的操作方法,親測可用一週的研究成果

........................................................

繼續操作

15、echo -e '\\nexport PATH=/usr/local/gcc-6.4.0/bin:$PATH\\n' >> /etc/profile.d/gcc.sh && source /etc/profile.d/gcc.sh

配置

16、ln -sv /usr/local/gcc-6.4.0/include/ /usr/include/gcc

導出文件

17、ldconfig -v

配置生效

18、ldconfig -p |grep gcc

19、gcc -v

檢查是否為新的版本號


Cent OS 7.6的gcc升級的操作方法,親測可用一週的研究成果

........................................................

到這裡還沒結束,還需繼續配置,不然用不了

20、find / -name "libstdc++.so*"

檢查動態庫

要最後一行的結果//最新動態庫

/opt/tmp/gcc-6.4.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.22

/opt/tmp/gcc-6.4.0/build是升級gcc時的輸出目錄,將上面的最新動態庫libstdc++.so.6.0.22複製到/usr/lib64目錄下。

21、cp /opt/tmp/gcc-6.4.0/build/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.22 /usr/lib64

一定不要忘記後面添加的/usr/lib64,複製後,修改系統默認動態庫的指向,即:重建默認庫的軟連接。

22、cd /usr/lib64

切換工作目錄至/usr/lib64

23、rm -rf libstdc++.so.6

將默認庫的軟連接指向最新動態庫

24、ln -s libstdc++.so.6.0.22 libstdc++.so.6

默認動態庫升級完成。

25、strings /usr/lib64/libstdc++.so.6 | grep GLIBC

重新運行檢查動態庫,即可。

至此,大功告成。

Cent OS 7.6的gcc升級的操作方法,親測可用一週的研究成果


分享到:


相關文章: