CentOS升級GCC到GCC4.8.2

來源:互聯網
上載者:User

標籤:gcc   gcc4.8.2   ld_library_path   linux   monaserver   

伺服器上安裝的GCC版本過舊,不足以滿足個人使用的版本需求,故決定對其進行升級操作,由目前的版本3.4.6升級到4.8.2,受許可權制約,只能安裝到個人指定目錄,因此如果您的伺服器可以串連外網,並且有root或者sudo許可權的話,可以使用自助安裝服務,您可以跳過本文,節省寶貴時間吧。


所謂“工欲善其事必先利其器”,在許可權受限,並不能串連外網的情況下,操作Linux的安裝著實蛋疼,可沒辦法,麻煩歸麻煩,結果是好的。

準備好GCC的壓縮包gcc-4.8.2.tar.gz(105MB左右)後不再囉嗦,進入主題:

1、查看系統內容和gcc版本,執行命令:

$lsb_realease -a 

$gcc -v

2、解壓gcc-4.8.2.tar.gz到目前的目錄下

$tar -zvxf gcc-4.8.2.tar.gz

3、進入gcc目錄,查看編譯需要的依賴檔案

$cd gcc-4.8.2/

$vim ./contrib/download_prerequisites


4、根據上述地址,分別下載mpfr/gmp/mpc三個檔案,並解壓安裝。由於mpc依賴於mpfr和gmp,mpfr依賴於gmp,故安裝順序依次為gmp、mpfr、mpc。

gmp-4.3.2.tar.bz2

mpfr-2.4.2.tar.bz2

mpc-0.8.1.tar.gz

5、編譯安裝gmp

$tar -jvxf ~/gmp-4.3.2.tar.bz2

$cd gmp-4.3.2

$./configure --prefix=~/gcclib/gmp432(自訂配置路徑)

$make && make install

6、編譯安裝mpfr

$tar -jxvf ~/mpfr-2.4.2.tar.bz2 

$cd mpfr-2.4.2/

$./configure --prefix=~/gcclib/mpfr242 --with-gmp=~/gcclib/gmp432/ (依賴於gmp)

$make && make install

7、編譯安裝mpc

$tar -zxvf ~/mpc-0.8.1.tar.gz

$cd mpc-0.8.1/

$./configure --prefix=~/gcclib/mpc081 --with-gmp=~/gcclib/gmp432/ --with-mpfr=~/gcclib/mpfr242/ (依賴於gmp與mpfr)

$make && make install

8、編譯安裝gcc

$tar -zvxf ~/gcc-4.8.2.tar.gz 

$cd gcc-4.8.2

$./configure --prefix=~/gcc482 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=~/gcclib/gmp432/ --with-mpfr=~/gcclib/mpfr242/ --with-mpc=~/gcclib/mpc081/(注意千萬不要拼字錯誤,我在這吃了很多虧,導致浪費很多時間,拼字錯誤,會報各種錯誤,然後解決掉還有,反反覆複,最終發現自己參數寫錯了,如"multilib"誤寫成"mutilib",--enable與--disable的參數你就按照我這樣寫,沒錯,後面的--with指定你自己的路徑)

$如果你覺得此時你可以在執行"make"命令的話,那你會相當的痛苦,預設安裝的話,所有的lib共用庫都會被放到系統目錄下如64位的/usr/lib64/,而我們手動指定目錄的形式,系統在編譯構建的時候是找不到的,就是說GCC找不到之前我們安裝的三個lib庫,so我們這樣做,即使沒許可權的話,可以建立全域的臨時路徑。

$export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/gcclib/gmp432/lib:~/gcclib/mpfr242/lib:~/gcclib/mpc081/lib(保證原有的參數正確,加上新的共用路徑,用冒號分隔)

$make(別傻等在螢幕前,聽哥一句勸,這個過程的時間你可以欣賞一Hollywood大片啦,至少1.5小時,當然如果你的伺服器牛逼的不行超級快請忽略)

$make install

$~/gcc482/bin/gcc -v (查看安裝版本,驗證是否安裝成功)

9、Complete!


在安裝過程中,遇到的奇葩問題不少於10個,這裡沒有記錄,因為沒有原圖,說服力不夠,而且記錄比較麻煩,所以如果你在安裝過程中遇到什麼問題,仔細看看錯誤提示,Google一下,就很容易解決,當然特別歡迎你留言,很樂意幫你解決。

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

CentOS升級GCC到GCC4.8.2

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.