The Linux GCC HOWTO中譯版V0.1 : GCC的安裝(installation)與啟用(setup)
Previous: 上哪抓這些東東?
Next: 移植(Porting)與編譯(Compiling)程式

3. GCC的安裝(installation)與啟用(setup)

3.1. GCC的版本

你可以在shell的提示符號下鍵入gcc -v,螢幕上就會顯示出你目前正在使用的GCC的版本.而這也是一個相當可靠的方法,可以確定你現在所用的是ELF或是a.out.在我的系統上,執行gcc -v的結果是:

$ gcc -v
Reading specs from /usr/lib/gcc-lib/i486-box-linux/2.7.2/specs
gcc version 2.7.2

上面的訊息說明了幾件重要的事情:

所以,總結起來,我有2.7.2版的gcc,可以產生ELF格式的程式碼.就這麼簡單,驚訝吧!eh?

3.2. 東東裝好後都到哪兒去了?

如果安裝gcc時沒有仔細的看著螢幕,或者你是從一個完整的發行系統內把gcc單獨抓出來安裝的話,那麼也許你會想知道到底這些東東裝好後是住在整個檔案系統(file-system)的那個地方.幾個重點如下:

3.3. 標頭檔ㄋㄟ?標頭檔ㄋㄟ?

把你自己自行安裝在/usr/local/include目錄下的標頭檔(header files)排除在外的話,Linux還有另外3種主要的標頭檔(header files):

3.4. 建立交叉編譯器(Building cross compilers)

3.4.1. 將Linux當作目標作業平台(target platform)

假設你已經拿到gcc的原始碼,通常你只要依循INSTALL檔內的指示便可一切ok. make後面黏個configure --target=i486-linux --host=XXX on platform XXX,就能幫你變把戲了(do the trick).要注意的是,你會需要Linux與核心的標頭檔的;而且你也需要建立交叉組譯器(cross assembler)與交叉連結器(cross linker),來源是ftp://tsx-11.mit.edu/pub/linux/packages/GCC/

3.4.2. Linux當成來源作業平台(source platform),MSDOS作為目標作業平台

Ugh.很明顯的,這個大概需要用到"emx"套件(package)或者是"go"延伸套件(extender).請自行去ftp://sunsite.unc.edu/pub/Linux/devel/msdos看看.我並沒有測試過這個,因此也無法保證(vouch)它的功能(abilities).


The Linux GCC HOWTO中譯版V0.1 : GCC的安裝(installation)與啟用(setup)
Previous: 上哪抓這些東東?
Next: 移植(Porting)與編譯(Compiling)程式