CentOS 離線安裝gcc(版本4.8.2)詳細(xì)介紹
CentOS 離線安裝gcc
折騰了一天,功夫不負(fù)有心人,終于整出來了,還是很激動的呵呵。廢話就不多說了,直接進(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)和庫文件(lib*)的位置,本次安裝會安裝在 /usr/local/include 和 /usr/local/lib . 這個(gè)對后面安裝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)先級,設(shè)大一些之后就自動使用新版了
這是我從網(wǎng)上找到的方法,可我試了,但gcc --v時(shí)顯示的還是舊版本update-alternatives --display gcc 又顯示正確,試想gcc482我們是安裝了,可它的執(zhí)行路徑和lib并沒有在系統(tǒng)中設(shè)置,而gcc --v肯定會從執(zhí)行路徑中尋找,因此它顯示的結(jié)果是舊版的gcc又很正常了,對于這種做法目前我也很疑惑,哪位知道失敗原因的,希望各位大蝦多多指教?。?/p>
方法二:
這種方法很簡單,設(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)
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
詳解如何在Linux系統(tǒng)中監(jiān)控TCP連接
在?Linux?系統(tǒng)中,監(jiān)控?TCP?連接是網(wǎng)絡(luò)管理和故障排查的重要任務(wù)之一,無論是系統(tǒng)管理員還是開發(fā)人員,了解如何查看和分析?TCP?連接狀態(tài)都至關(guān)重要,本文將詳細(xì)介紹如何在?Linux?系統(tǒng)中監(jiān)控?TCP?連接,需要的朋友可以參考下2025-02-02
Linux上下行網(wǎng)速測試工具_(dá)speedtest-cli安裝使用方法
speedtest-cli是Linux下的一個(gè)上下行網(wǎng)速測試工具,是一個(gè)用Python寫的命令行腳本,需要的朋友可以參考下2017-03-03
CentOS下寶塔部署Django項(xiàng)目的詳細(xì)教程
這篇文章主要介紹了CentOS下寶塔部署Django項(xiàng)目的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
linux注釋crontab文件及crontab執(zhí)行sh的坑記錄
這篇文章主要介紹了linux注釋crontab文件及crontab執(zhí)行sh的坑記錄,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
Linux使用less高效讀取GC日志的實(shí)現(xiàn)方法
在Linux環(huán)境中,日志分析是運(yùn)維和開發(fā)人員日常工作中不可或缺的一部分,特別是對于Java應(yīng)用的垃圾回收(GC)日志,本文將結(jié)合實(shí)際案例,詳細(xì)講解如何使用 less 命令高效讀取和分析GC日志,需要的朋友可以參考下2025-04-04

