CentOS 離線安裝gcc(版本4.8.2)詳細(xì)介紹
CentOS 離線安裝gcc
折騰了一天,功夫不負(fù)有心人,終于整出來了,還是很激動(dòng)的呵呵。廢話就不多說了,直接進(jìn)入正題。
首先,在CentOS下安裝gcc4.8.2需要先安裝GMP,MPFR 和 MPC 三個(gè)包。
安裝包下載地址
從http://gcc.gnu.org/下載gcc安裝包 gcc-4.8.2.tar.gz
從ftp://ftp.gnu.org/gnu/gmp/ 下載GMP安裝包 gmp-5.1.3 .tar.bz2
從http://ftp.gnu.org/gnu/mpfr/ 下載MPFR安裝包 mpfr-3.1.2.tar.gz
從http://www.cise.ufl.edu/mirrors/GNU/pub/gnu/mpc 下載MPC安裝包 mpc-1.0.1.tar.gz
安裝步驟如下:
把GMP,MPFR 和 MPC 三個(gè)包分別解壓到單獨(dú)的文件中。
安裝gmp
[root@liuyanmin ~]# cd gmp-5.1.3 [root@liuyanmin gmp-5.1.3]# ./configure [root@liuyanmin gmp-5.1.3]# make [root@liuyanmin gmp-5.1.3]# make check
這一步是必要的,用來查看有沒有文件不匹配或缺失,在最后提示,到時(shí)注意看有沒有Erro之類的提示,如果沒有說明安裝正常了. 本人安裝過程中沒有出現(xiàn)錯(cuò)誤, 如果網(wǎng)友編譯過程中出了問題記得告訴我.
[root@liuyanmin gmp-5.1.3]# make install
安裝編譯后的軟件,完成了安裝過程
有必要說明程序的頭文件(.h)和庫(kù)文件(lib*)的位置,本次安裝會(huì)安裝在 /usr/local/include 和 /usr/local/lib . 這個(gè)對(duì)后面安裝mpfr很有作用.
安裝mpfr
[root@liuyanmin ~]# cd mpfr-3.1.2 [root@liuyanmin mpfr-3.1.2]# ./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib [root@liuyanmin mpfr-3.1.2]# make [root@liuyanmin mpfr-3.1.2]# make check
在每步操作中一定要看看有沒有錯(cuò)誤,本人編譯時(shí)沒有錯(cuò)誤。
[root@liuyanmin gmp-5.1.3]# make install
安裝MPC
[root@liuyanmin ~]# cd mpc-1.0.1 [root@liuyanmin mpc-1.0.1]# ./configure [root@liuyanmin mpc-1.0.1]# make [root@liuyanmin mpc-1.0.1]# make check [root@liuyanmin mpc-1.0.1]# make install
上邊安裝成功后,還要配置lib目錄,因?yàn)間cc編譯時(shí)需要
[root@liuyanmin mpc-1.0.1]# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
這次就可以安裝gcc了
創(chuàng)建gcc安裝目錄/usr/gcc482
解壓gcc4.8.2并進(jìn)入解壓后的目錄,打開命令終端,執(zhí)行
[root@liuyanmin gcc4.8.2]# ./configure --prefix=/usr/gcc482 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ [root@liuyanmin gcc4.8.2]# make [root@liuyanmin gcc4.8.2]# make install
現(xiàn)在gcc4.8.2安裝完成了,但是gcc4.8.2的環(huán)境變量還沒有設(shè)置,系統(tǒng)中使用的還是舊版的gcc。
剛剛我們把gcc4.8.2安裝在/usr/gcc482下,如果不知道的話可以通過下邊這步查找一下。
確定新安裝的GCC的路徑,可以先updatedb,然后locate gcc-4.8 |tail找一下。
查看gcc4.8.2信息如下
ls /usr/gcc482/bin | grep gcc
設(shè)置使用新版的gcc4.8.2的方法,我現(xiàn)在有兩種。
方法一:
添加gcc4.8.2到可選項(xiàng):
update-alternatives --install /usr/bin/gcc gcc /usr/gcc482/bin/i686-pc-Linux-gnu-gcc 40
倒數(shù)第三個(gè)參數(shù)是名字,倒數(shù)第二個(gè)參數(shù)為新GCC路徑,最后一個(gè)參數(shù)40為優(yōu)先級(jí),設(shè)大一些之后就自動(dòng)使用新版了
這是我從網(wǎng)上找到的方法,可我試了,但gcc --v時(shí)顯示的還是舊版本update-alternatives --display gcc 又顯示正確,試想gcc482我們是安裝了,可它的執(zhí)行路徑和lib并沒有在系統(tǒng)中設(shè)置,而gcc --v肯定會(huì)從執(zhí)行路徑中尋找,因此它顯示的結(jié)果是舊版的gcc又很正常了,對(duì)于這種做法目前我也很疑惑,哪位知道失敗原因的,希望各位大蝦多多指教?。?/p>
方法二:
這種方法很簡(jiǎn)單,設(shè)置軟鏈接即可
[root@liuym usr]# mkdir /usr/gcc447backup/ [root@liuym usr]# mv /usr/bin/{gcc,g++} /usr/gcc447backup [root@liuym usr]# ln -s /usr/gcc482/bin/gcc /usr/bin/gcc [root@liuym usr]# ln -s /usr/gcc482/bin/g++ /usr/bin/g++ [root@liuym usr]# gcc -v
使用內(nèi)建 specs。
COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/gcc482/libexec/gcc/i686-pc-linux-gnu/4.8.2/lto-wrapper
目標(biāo):i686-pc-linux-gnu
配置為
:./configure --prefix=/usr/gcc482 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++
線程模型:posix
gcc 版本 4.8.2 (GCC)
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Linux Web服務(wù)器網(wǎng)站故障分析常用命令
這篇文章主要為大家詳細(xì)分析了Linux Web服務(wù)器網(wǎng)站故障,利用常用命令查看故障,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10CentOS 6.5編譯安裝Nginx 1.10.2+MySQL 5.5.52+PHP5.5.38
這篇文章主要介紹了CentOS 6.5編譯安裝Nginx 1.10.2+MySQL 5.5.52+PHP5.5.38,需要的朋友可以參考下2017-02-02詳解linux下的.net/mvc/cms程序結(jié)構(gòu)
本片文章給大家詳細(xì)分析了在linux下.net/mvc/cms程序詳細(xì)結(jié)構(gòu)說明,了解這個(gè)對(duì)在linux下程序開發(fā)非常有用,有興趣的參考學(xué)習(xí)下吧。2017-12-12ubuntu 系統(tǒng)上為php加上redis 擴(kuò)展的實(shí)現(xiàn)方法
這篇文章主要介紹了ubuntu 系統(tǒng)上為php加上redis 擴(kuò)展的實(shí)現(xiàn)方法的相關(guān)資料,希望通過本文能幫助到大家,讓大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下2017-10-10Linux學(xué)習(xí)第三篇 Centos7安裝mysql5.7.16數(shù)據(jù)庫(kù)
這篇文章主要為大家詳細(xì)介紹了Linux學(xué)習(xí)第三篇,Centos7安裝mysql5.7.16數(shù)據(jù)庫(kù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05