CentOS7環(huán)境下gcc(版本10.2.0)升級詳細過程
簡短介紹
大家好,今天給大家分享gcc編譯器的升級方法。在linux系統(tǒng)中其實已經自帶了gcc編譯器,但是版本比較低。目前有些開源工具例如:Apache Doris在安裝時需要更高版本的gcc 5.3.1+以上版本編譯器才能編譯c++代碼。那么我們就了解下gcc升級方法(從 4.8.5 升級到 10.2.0 )。
1、查看當前gcc版本
## 看出當前系統(tǒng) gcc版本. 默認4.8.5g++ -v 或者 gcc --version
2、下載gcc安裝包(10.2.0版本)
## 下載地址:http://ftp.gnu.org/gnu/gcc## linux下通過 wget指令下載wget http://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.gz
3、解壓安裝包
tar -xvf gcc-10.2.0.tar.gz## 解壓后目錄 gcc-10.2.0
4、下載依賴庫
## 進入解壓后目錄,進行依賴庫下載cd gcc-10.2.0./contrib/download_prerequisites
5、安裝系統(tǒng)必須包模塊
yum install -y gcc-c++ libstdc++-static ant cmake byacc flex automake libtool binutils-devel bison ncurses-devel gcc kernel-devel libtool libatomic
6、創(chuàng)建編譯目錄
## 在gcc-10.2.0.同級目錄,創(chuàng)建編譯目錄 。名稱為:gcc-build-10.2.0mkdir ../gcc-build-10.2.0
7、生成Makefile文件
## 進入編譯錄,執(zhí)行命令,生成Makefile文件cd gcc-build-10.2.0../gcc-10.2.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
說明:
如果提示錯誤,configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.
需要將步驟4中,下載的依賴包刪除,之后重新執(zhí)行下。正確的包大小如下:
8、編譯
#執(zhí)行命令進行編譯,此處利用4個job,需編譯時約40分鐘,此值不宜設置過高make -j4 ## 建議使用 nohup & 執(zhí)行,真心慢
9、安裝
make install ## 建議使用nohup & 執(zhí)行。大概2分鐘可完成
10、配置libstdc++.so
## 驗證編譯目錄(gcc-build-10.2.0)下是否存在 libstdc++.so find . -name "libstdc++.so*"
## 進入libstdc++.so配置目錄cd /usr/lib64## 將新的libstdc++.so 拷貝到目錄下cp /root/gcc-build-10.2.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.28 .## 備份mv libstdc++.so.6 libstdc++.so.6.old## 創(chuàng)建新軟連ln -sv libstdc++.so.6.0.28 libstdc++.so.6
11、配置環(huán)境變量
## 卸載老版本 4.8.5yum remove gcc gcc-c++## 進入根目錄cd ~## 編輯當前用戶環(huán)境變量vim .bash_profile## 內容PATH=$PATH:$HOME/bin:/usr/local/bin/export CC=/usr/local/bin/gccexport CXX=/usr/local/bin/g++## 立即生效source ~/.bash_profile## 驗證gcc --version
總結
gcc升級過程中會遇到各種模塊或者包缺失問題。需要大家一個個安裝。其實這和linux系統(tǒng)本身環(huán)境也有一定的關系。所以有問題不要怕,解決掉就好了。相信你們可以的。
最終附一個整體安裝的小腳本
#!/bin/bash## 如下可保存 shell腳本一鍵運行cd /usr/srcwget http://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.gzgcc_name_dir="gcc-10.2.0"gcc_build_name_dir="gcc-build-10.2.0"#解壓tar -xvf gcc-10.2.0.tar.gzcd ${gcc_name_dir}./contrib/download_prerequisitescd ..#建立編譯輸出目錄mkdir ${gcc_build_name_dir}#進入下面目錄,執(zhí)行命令,生成Makefile文件cd ${gcc_build_name_dir}../${gcc_name_dir}/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib#執(zhí)行命令進行編譯,此處利用4個job,需編譯時約40分鐘,此值不宜設置過高#sudo make -j4make -j4#安裝#sudo make installmake installexit 0## 如下需要手工操作##刪除之前 gccyum remove gcc gcc-c++##配置環(huán)境變量~/.bash_profile##版本位于目錄 /usr/local/bin/##加這個PATH=$PATH:$HOME/bin:/usr/local/bin/export CC=/usr/local/bin/gccexport CXX=/usr/local/bin/g++source ~/.bash_profile
到此這篇關于CentOS7環(huán)境下gcc(版本10.2.0)升級詳細過程的文章就介紹到這了,更多相關CentOS升級gcc內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Linux 新的API signalfd、timerfd、eventfd使用說明
這篇文章主要介紹了Linux 新的API signalfd、timerfd、eventfd使用說明的相關資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下2016-10-10谷歌云Google Cloud 啟用Ubuntu的SSH服務
默認情況下,當 Ubuntu 最初被安裝的時候,通過 SSH 進行遠程訪問是不被允許的,在 Ubuntu 上啟用 SSH 非常的簡單直接,需要的朋友可以參考下2023-12-12Linux系統(tǒng)?Centos7.4手動在線升級到Centos7.7
這篇文章主要介紹了Centos7.4手動升級到Centos7.7,需要的朋友可以參考下2022-01-01