CentOS上公升級gcc編譯器使支援C 11

2022-03-22 04:17:44 字數 1684 閱讀 9100

首先向博主致敬,好的東西拿來共享了,用一下不錯。

0. 目標

最近在學習c++11,我本機裝的centos編譯器較老,不支援c++11的新特性,所以我需要把gcc從

4.4.7公升級到4.8.1。

1.wget

現這種情況的時候就直接在本地的瀏覽器中訪問http://......  這個位址,就可把壓縮包download到本

地,然後在弄到虛擬機器中解壓繼續後面的操作,不要忙活半天糾結。

2.然後解壓進入目錄

tar -xvzf gcc-4.8.1.tar.gz -c /opt/gcc

cd /opt/gcc/gcc-4.8.1

執行如下命令:

./contrib/download_prerequisites

3.然後在gcc-4.8.1平級目錄下建立編譯目錄

cd ..

mkdir build_gcc_4.8.1

4.接下來就是執行編譯了

cd build_gcc_4.8.1

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

make -j4    // make 還是時間有點長,不同機器配置可能時間不一樣,我的持續了1個多小時

make install

如果在執行make 和 make install的時候沒有遇到error,那麼恭喜你,已經完成了gcc-4.8.1安裝了。

預設安裝路徑為:

/usr/local/bin

5.接下來就是公升級版本了。

/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-4.8.1 40

/usr/sbin/update-alternatives --install /usr/bin/g++ g++ /usr/local/bin/g++ 40

6.再次檢視你伺服器的gcc版本可以看到已經更新為4.8.1

gcc --version 

gcc (gcc) 4.8.1

包括沒有適銷性和某一專用目的下的適用性擔保。

總結:

但其實在make 和 make install的過程中,多多少少還會碰到一些莫名其妙的問題。

後來執行 make clean 並刪除所有 build的檔案後,重新來了一遍,竟然成功了。

經過總結第一次失敗和第二次成功的唯一區別是:

第二次gcc-4.8.1解壓是放到/opt/gcc/目錄下了,後續的build_gcc-4.8.1也是放到/opt/gcc目錄下。

而第一次時,解壓原始碼gcc-4.8.1和後續的build_gcc-4.8.1都是放到/opt/根目錄下。

我在做的時候按照這個步驟,一路順風就到了 4.8.1 沒有出現error,所以再次感謝博主的經驗。

CentOS 7 公升級GCC編譯器

centos把最新的開發者工具包放到了乙個名為centos release scl的源倉庫中,名稱是devtools 6。gcc已經公升級到7.1版本,centos目前尚未跟進,最高版本是devtools 6,其中包含gcc 6.2.1版本。具體做法如下 sudo yum install cento...

CentOS中安裝gcc編譯器

centos中安裝gcc編譯器 今天要做老師布置的乙個網路任務時,發現在我安裝centos的時候忘記勾選了c語言這一塊的安裝項導致直接使用gcc o 命令無效。然後,在宿舍想使用yum連線網路安裝gcc,又發現,寬頻的共享功能被網路管理中心的老師給禁止了 好在天無絕人之路,柳暗花明又一村 只不過說,...

在CentOS 7 2下公升級gcc編譯器的版本

預設情況下,centos 7.2預裝的gcc版本是4.8.x,通過執行命令 gcc v 可以看到,一般情況下這個版本的編譯器已經滿足需要了,但是某些特殊的時候為了支援c 更高的特性,需要對gcc編譯器的版本進行公升級,比如安裝最新的mariadb 10的時候,就需要使用高版本的gcc,具體公升級過程...