自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux上安裝GCC編譯器過(guò)程

運(yùn)維 系統(tǒng)運(yùn)維
最流行的GCC編輯器3.4.0在2004年4月20日發(fā)布了。它可以用來(lái)編譯C/C++、FORTRAN、JAVA、OBJC、ADA等語(yǔ)言的程序,而且可以根據(jù)個(gè)人需要選擇安裝支持的語(yǔ)言。本文主要講述了 GCC 3.4.0編輯器基于Redhat Linux操作系統(tǒng)上的安裝。

       安裝準(zhǔn)備

       安裝之前,linux系統(tǒng)中必須要有cc或者GCC編譯器,并且是可用的,或者用環(huán)境變量CC指定系統(tǒng)上的編譯器。如果系統(tǒng)上沒(méi)有編譯器,不能安裝源代碼形式的GCC 3.4.0。如果是這種情況,可以在網(wǎng)上找一個(gè)與你系統(tǒng)相適應(yīng)的如RPM等二進(jìn)制形式的GCC軟件包來(lái)安裝使用。本文介紹的是以源代碼形式提供的GCC軟件包的安裝過(guò)程,軟件包本身和其安裝過(guò)程同樣適用于其它Linux和Unix系統(tǒng)。

  系統(tǒng)上原來(lái)的GCC編譯器可能是把gcc等命令文件、庫(kù)文件、頭文件等分別存放到系統(tǒng)中的不同目錄下的。與此不同,現(xiàn)在GCC建議我們將一個(gè)版本的GCC安裝在一個(gè)單獨(dú)的目錄下。這樣做的好處是將來(lái)不需要它的時(shí)候可以方便地刪除整個(gè)目錄即可(因?yàn)镚CC沒(méi)有uninstall功能);缺點(diǎn)是在安裝完成后要做一些設(shè)置工作才能使編譯器工作正常。在本文中我采用這個(gè)方案安裝GCC 3.4.0,并且在安裝完成后,仍然能夠使用原來(lái)低版本的GCC編譯器,即一個(gè)系統(tǒng)上可以同時(shí)存在并使用多個(gè)版本的GCC編譯器。

  以下是我操作的一些步驟和設(shè)置選項(xiàng),即使以前沒(méi)有安裝過(guò)GCC,也可以在系統(tǒng)上安裝上一個(gè)可工作的新版本的GCC編譯器。

  一、下載

  在GCC網(wǎng)站上(http://gcc.gnu.org/)或者通過(guò)網(wǎng)上搜索可以查找到下載資源。目前GCC的最新版本為 3.4.0??晒┫螺d的文件一般有兩種形式:gcc-3.4.0.tar.gz和gcc-3.4.0.tar.bz2,只是壓縮格式不一樣,內(nèi)容完全一致,下載其中一種即可。

  二、解壓縮

  根據(jù)壓縮格式,選擇下面相應(yīng)的一種方式解包(以下的“%”表示命令行提示符):

  % tar xzvf gcc-3.4.0.tar.gz
  或者
  % bzcat gcc-3.4.0.tar.bz2 | tar xvf -

  新生成的gcc-3.4.0這個(gè)目錄被稱為源目錄,用${srcdir}表示它。以后在出現(xiàn)${srcdir}的地方,應(yīng)該用真實(shí)的路徑來(lái)替換它。用pwd命令可以查看當(dāng)前路徑。

  在${srcdir}/INSTALL目錄下有詳細(xì)的GCC安裝說(shuō)明,可用瀏覽器打開(kāi)index.html閱讀。

  三、建立目標(biāo)目錄

  目標(biāo)目錄(用${objdir}表示)是用來(lái)存放編譯結(jié)果的地方。GCC建議編譯后的文件不要放在源目錄${srcdir]中(雖然這樣做也可以),最好單獨(dú)存放在另外一個(gè)目錄中,而且不能是${srcdir}的子目錄。

  例如,可以這樣建立一個(gè)叫 gcc-build 的目標(biāo)目錄(與源目錄${srcdir}是同級(jí)目錄):

  % mkdir gcc-build
  % cd gcc-build

  以下的操作主要是在目標(biāo)目錄 ${objdir} 下進(jìn)行。

  四、 配置

  配置的目的是決定將GCC編譯器安裝到什么地方(${destdir}),支持什么語(yǔ)言以及指定其它一些選項(xiàng)等。其中,${destdir}不能與${objdir}或${srcdir}目錄相同。

  配置是通過(guò)執(zhí)行${srcdir}下的configure來(lái)完成的。其命令格式為(記得用你的真實(shí)路徑替換${destdir}):

  % ${srcdir}/configure --prefix=${destdir} [其它選項(xiàng)]

  例如,如果想將GCC 3.4.0安裝到/usr/local/gcc-3.4.0目錄下,則${destdir}就表示這個(gè)路徑。

  在我的機(jī)器上,我是這樣配置的:

  % ../gcc-3.4.0/configure --prefix=/usr/local/gcc-3.4.0 --enable-threads=posix --disable-checking --enable--long-long --host=i386-redhat-linux --with-system-zlib --enable-languages=c,c++,java

  將GCC安裝在/usr/local/gcc-3.4.0目錄下,支持C/C++和JAVA語(yǔ)言,其它選項(xiàng)參見(jiàn)GCC提供的幫助說(shuō)明。

  五、編譯

  % make

  這是一個(gè)漫長(zhǎng)的過(guò)程。在我的機(jī)器上(P4-1.6),這個(gè)過(guò)程用了50多分鐘。

#p#

  六、安裝

  執(zhí)行下面的命令將編譯好的庫(kù)文件等拷貝到${destdir}目錄中(根據(jù)你設(shè)定的路徑,可能需要管理員的權(quán)限):

  % make install

  至此,GCC 3.4.0安裝過(guò)程就完成了。

  七、其它設(shè)置

  GCC 3.4.0的所有文件,包括命令文件(如gcc、g++)、庫(kù)文件等都在${destdir}目錄下分別存放,如命令文件放在bin目錄下、庫(kù)文件在lib下、頭文件在include下等。由于命令文件和庫(kù)文件所在的目錄還沒(méi)有包含在相應(yīng)的搜索路徑內(nèi),所以必須要作適當(dāng)?shù)脑O(shè)置之后編譯器才能順利地找到并使用它們。

  (1) gcc、g++、gcj的設(shè)置

  要想使用GCC 3.4.0的gcc等命令,簡(jiǎn)單的方法就是把它的路徑${destdir}/bin放在環(huán)境變量PATH中。我不用這種方式,而是用符號(hào)連接的方式實(shí)現(xiàn),這樣做的好處是我仍然可以使用系統(tǒng)上原來(lái)的舊版本的GCC編譯器。

  首先,查看原來(lái)的gcc所在的路徑:

  % which gcc

  在我的系統(tǒng)上,上述命令顯示:/usr/bin/gcc。因此,原來(lái)的gcc命令在/usr/bin目錄下。我們可以把GCC 3.4.0中的gcc、g++、gcj等命令在/usr/bin目錄下分別做一個(gè)符號(hào)連接:

  % cd /usr/bin
  % ln -s ${destdir}/bin/gcc gcc34
  % ln -s ${destdir}/bin/g++ g++34
  % ln -s ${destdir}/bin/gcj gcj34

  這樣,就可以分別使用gcc34、g++34、gcj34來(lái)調(diào)用GCC 3.4.0的gcc、g++、gcj完成對(duì)C、C++、JAVA程序的編譯了。同時(shí),仍然能夠使用舊版本的GCC編譯器中的gcc、g++等命令。

  (2)庫(kù)路徑的設(shè)置

  將${destdir}/lib路徑添加到環(huán)境變量LD_LIBRARY_PATH中,最好添加到系統(tǒng)的配置文件中,這樣就不必要每次都設(shè)置這個(gè)環(huán)境變量了。

  例如,如果GCC 3.4.0安裝在/usr/local/gcc-3.4.0目錄下,在RH Linux下可以直接在命令行上執(zhí)行或者在文件/etc/profile中添加下面一句:

  setenv LD_LIBRARY_PATH /usr/local/gcc-3.4.0/lib:$LD_LIBRARY_PATH

  八、測(cè)試

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

  根據(jù)需要,可以刪除或者保留${srcdir}和${objdir}目錄。

  后記:

  前兩天剛安裝好了GCC 3.4.0,把安裝規(guī)劃、安裝過(guò)程、一些注意事項(xiàng)記錄下來(lái)就形成了這篇文章。不過(guò),除了GCC 3.4.0 版本的編輯器以外,其他版本的GCC編輯器的安裝也大同小異?;赗edhat Linux操作系統(tǒng)上的安裝還是比較簡(jiǎn)單的,只是安裝過(guò)程中估計(jì)會(huì)耗用一點(diǎn)兒時(shí)間,還需要各位操作者的耐心等待。如果有什么不完善的地方 ,盡管提出來(lái),我會(huì)針對(duì)各種問(wèn)題一一為大家簡(jiǎn)答的。

【編輯推薦】

  1. 熱門(mén)Linux桌面環(huán)境挨個(gè)看
  2. Linux操作系統(tǒng)內(nèi)核工作原理介紹
  3. 安裝linux系統(tǒng)可以用的5種方法
  4. 4.1.3 基于Linux下GCC的匯編語(yǔ)言程序結(jié)構(gòu)
  5. Linux編程工具用 gdb 調(diào)試 GCC 程序
  6. GCC 4.5發(fā)布 年內(nèi)集成主流Linux系統(tǒng)
  7. Linux gcc編譯寫(xiě)段小程序來(lái)驗(yàn)證其正確性
  8. Linux apache提示安裝C組件和解釋器gcc
  9. 細(xì)談linux gcc的概念及其參數(shù)
責(zé)任編輯:zhaolei 來(lái)源: 51cto.com
相關(guān)推薦

2010-02-26 13:43:36

Linux gcc

2010-03-02 10:55:47

Linux SkyEy

2020-11-03 10:32:22

編譯器工具代碼

2020-12-07 09:20:59

編譯器工具代碼

2009-04-28 18:57:25

Linux編譯器GCC v4.4.0

2010-02-24 16:49:24

Fedora SkyE

2009-07-07 09:14:53

Milepost GC編譯器

2010-01-27 13:53:40

強(qiáng)大的CC++編譯器

2011-07-20 16:43:33

iPhone Bug Xcode

2010-06-04 17:37:45

Linux編程工具

2018-04-13 10:56:14

編譯器工具開(kāi)發(fā)者

2010-01-04 10:06:56

Ubuntu gcc

2010-01-13 16:46:44

CentOS Apac

2011-04-22 14:59:14

RedHat編譯器

2010-02-22 16:09:18

CentOS安裝

2009-08-24 11:36:27

CLR加載過(guò)程

2021-09-28 09:34:35

聯(lián)發(fā)科編譯器GCC

2010-01-18 10:34:21

C++編譯器

2010-06-11 11:15:33

Linux編程工具

2009-08-10 17:12:54

C#編譯器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)