Linux下安裝gcc環境

1、瞭解一下gcc  

  目前,GCC可以用來編譯C/C++、FORTRAN、JAVA、OBJC、ADA等語言的程序,可根據需要選擇安裝支持的語言。

  在安裝之前,系統必須有cc或者gcc的編譯器,如果沒有,就不能安裝更高版本的gcc了,如果是這種情況,可以在網上找一個與你係統相適應的如RPM等二進制形式的GCC軟件包來安裝使用。

  本文介紹的是以源代碼安裝gcc的過程,我安裝的是在一個單獨的目錄下,以後想卸載的話,直接刪除該目錄就行。

2、需要下載的安裝包

2.1 下載gcc

  下載網址是http://ftp.gnu.org/gnu/gcc/,可以根據自己的需要下載哪個版本。

2.2 下載3個依賴包

  一個是mpc,一個是gmp,一個是mpfr,下載地址依次爲:ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz,ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2 ,http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.gz。安裝的順序依次爲:GMP,mpfr, mpc,最後安裝gcc。我開始就直接安裝gcc,在配置過程出現以下信息:

configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify

their locations. 

  提示安裝gcc之前,必須安裝GMP 4.2以上版本,MPFR2.3.1以上版本, MPC 0.8.0以上版本。

3、安裝步驟

3.1 安裝GMP-5.0.1.

  我這裏選擇的是GMP5.0.1版本,解壓gmp-5.0.1後,得到源代碼目錄,創建一個臨時編譯目錄temp。

$ tar -jxvf gmp-5.0.1.tar.bz2
$ cd gmp-5.0.1
$ mkdir temp
$ cd temp

開始配置安裝目錄,進入temp目錄後,輸入以下命令:

$ ../configure --prefix=/usr/local/gmp-5.0.1

$ make

$ make install

這樣gmp就安裝完成了。安裝mpfr和mpc過程也差不多,只是安裝的時候得加入依賴項

3.2 安裝mpfr

  我這裏選擇的是3.1.2版本的mpfr。解壓,建立臨時編譯目錄temp,進入temp目錄

$ tar -zxvf mpfr-3.1.2.tar.gz 

$ cd mpfr-3.1.2

$ mkdir temp

$ cd temp

$ ../configure --prefix=/usr/local/mpfr-3.1.0 --with-gmp=/usr/local/gmp-5.0.1

$ make

$ make install

 其中--with=/usr/local/gmp-5.0.1就是依賴項, /usr/local/gmp-5.0.1是gmp的安裝目錄

3.3 安裝mpc

  我選擇的是1.0.2版本mpc.解壓,建立臨時編譯目錄temp,進入temp目錄.

$ tar -zxvf mpc-1.0.2.tar.gz

$ cd mpc-1.0.2

$ mkdir temp

$ cd temp

$ ../configure --prefix=/usr/local/mpc-1.0.2 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0

$ make

$ make install

記得後面兩項的依賴項,也就是你的gmp和mpfr的安裝目錄

3.4 安裝gcc

  前面安裝的三個,都是爲安裝gcc做準備的。解壓gcc的安裝包

$ tar zxvf gcc-4.3.4.tar.gz 或者 $ tar jxvf gcc-4.5.1.tar.bz2

得到的目錄gcc-4.3.4就是源目錄,用${srcdir}表示。在gcc-4.3.4裏的INSTALL目錄裏就有安裝的詳細過程,那全都是英文的,裏面的源目錄也是用${srcdir}表示。我是解壓在/usr/local/src/gcc-4.3.4目錄裏。

  建立目標目錄

$ mkdir /usr/local/gcc-4.3

$ cd gcc-4.3

這是目標目錄,也就是編譯的目錄,然後以下所有的操作都在該目錄下進行.用${objdir}

  建立安裝目錄

$ mkdir /usr/local/gcc-4.3.4

這是你gcc安裝的地方。用${destdir}表示。開始進行配置

$ ${srcdir}/configure --prefix=${destdir} [其它選項]

安裝的時候記得把真實目錄替換掉${srcdir}和${destdir}。我的是這麼寫的

$ /usr/local/src/gcc-4.3.4/configure --prefix=/usr/local/gcc-4.3.4 --enable-threads=posix --disable-checking --enable--long-long --enable-languages=c,c++,java --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0 --with-mpc=/usr/local/mpc-1.0.2

記得加上後面三個依賴項,否則會出剛開始出現的錯誤的。然後安裝

$ make

$ make install

安裝的時候等挺長時間,差不多兩個小時。

3.5 gcc、g++、gcj設置

  要想使用GCC 4.3.4的gcc等命令,簡單的方法就是把它的路徑${destdir}/bin放在環境變量PATH中。我不用這種方式,而是用符號連接的方式實現,這樣做的好處是我仍然可以使用系統上原來的舊版本的GCC編譯器。

  而原來gcc的路徑是在usr/bin下。我們可以把gcc 4.3.4中的gcc、g++、gcj等命令在/usr/bin目錄下分別做一個符號連接:

$ cd /usr/bin

$ ln -s /usr/local/gcc-4.3.4/bin/gcc gcc434

$ ln -s /usr/local/gcc-4.3.4/bin/g++ g++434

$ ln -s /usr/local/gcc-4.3.4/bin/gcj gcj434

  這樣,就可以分別使用gcc434、g++434、gcj434來調用GCC 4.1.2的gcc、g++、gcj完成對C、C++、JAVA程序的編譯了。同時,仍然能夠使用舊版本的GCC編譯器中的gcc、g++等命令。

3.6 庫路徑的設置

將${destdir}/lib路徑添加到環境變量LD_LIBRARY_PATH中,例如,如果GCC 4.3.4安裝在/usr/local/gcc-4.3.4目錄下,在RH Linux下可以直接在命令行上執行

$ export LD_LIBRARY_PATH=/usr/local/gcc-4.3.4/lib

最好添加到系統的配置文件中,這樣就不必要每次都設置這個環境變量了,在文件$HOME/.bash_profile中添加下面兩句:

LD_LIBRARY_PATH=:/usr/local/mpc-1.0.2/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.2/lib:/usr/local/gcc-4.3.4/lib

export LD_LIBRARY_PATH

或者在/etc/bash_profile 下添加。

重啓系統設置生效,或者執行命令

$ source $HOME/.bash_profile

或者:

$ source /etc/bash_profile

用新的編譯命令(gcc412、g++412等)編譯你以前的C、C++程序,檢驗新安裝的GCC編譯器是否能正常工作。

完成了Linux安裝GCC,之後你就能輕鬆地編輯了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章