gcc編譯器下載及安裝教程
時間:2018-03-08作者:華清遠(yuǎn)見
Linux下變成的源碼要運(yùn)行,必須先轉(zhuǎn)成二進(jìn)制的機(jī)器碼。此時就需要編譯器,Linux系統(tǒng)下的Gcc(GNU C Compiler)是GNU推出的功能強(qiáng)大、性能優(yōu)越的多平臺編譯器,是GNU的代表作品之一。gcc是可以在多種硬體平臺上編譯出可執(zhí)行程序的超級編譯器,其執(zhí)行效率與一般的編譯器相比平均效率要高20%~30%。 Gcc編譯器能將C、C++語言源程序通過編譯、連接成可執(zhí)行文件,如果沒有給出可執(zhí)行文件的名字,gcc將生成一個名為a.out的文件。 比如,下面這段源碼(文件名叫做test.c)。
#include<stdio.h> int main(void) { printf("Hello, world!\n"); return 0; } 編譯則使用gcc命令,gcc命令提供了非常多的命令選項(xiàng)。 一. 常用編譯命令選項(xiàng) 假設(shè)源程序文件名為test.c。 1. 無選項(xiàng)編譯鏈接 用法:#gcc test.c 作用:將test.c預(yù)處理、匯編、編譯并鏈接形成可執(zhí)行文件。這里未指定輸出文件,默認(rèn)輸出為a.out,如果需要執(zhí)行,內(nèi)核中必須支持該文件的格式,默認(rèn)一般都是elf可執(zhí)行程序 2. 選項(xiàng) -o 用法:#gcc test.c -o test 作用:將test.c預(yù)處理、匯編、編譯并鏈接形成可執(zhí)行文件test。-o選項(xiàng)用來指定輸出文件的文件名。 3. 選項(xiàng) -E 用法:#gcc -E test.c -o test.i 作用:將test.c預(yù)處理輸出test.i文件,預(yù)處理其實(shí)就是處理#預(yù)處理符號,比如#include, #define, #if, #ifdef, #error等 4. 選項(xiàng) -S 用法:#gcc -S test.i 作用:將預(yù)處理輸出文件test.i匯編成test.s文件。匯編語言對應(yīng)匯編指令,默認(rèn)gcc編譯成x86指令,如果需要編譯arm架構(gòu)的,就必須使用交叉工具鏈 5. 選項(xiàng) -c 用法:#gcc -c test.s 作用:將匯編輸出文件test.s編譯輸出test.o文件,二進(jìn)制文件就是101010機(jī)器碼 6. 無選項(xiàng)鏈接 用法:#gcc test.o -o test 作用:將編譯輸出文件test.o鏈接成最終可執(zhí)行文件test。 如果需要修改Ubuntu的gcc版本,可以看一下你的Ubuntu安裝了哪些版本的gcc 用命令:ls /usr/bin/gcc* -l 顯示是 lrwxrwxrwx 1 root root 7 2017-08-14 15:17 /usr/bin/gcc -> gcc-4.6 -rwxr-xr-x 1 root root 302104 2017-09-17 05:43 /usr/bin/gcc-4.6 由上面顯示可以看出默認(rèn)安裝的是gcc-4.6,現(xiàn)在來改成gcc-4.7 $ sudo apt-get install gcc-4.7 $ sudo apt-get install g++-4.7 刪除gcc-4.6的軟連接文件/usr/bin/gcc。(只是刪除軟連接) 命令:sudo rm /usr/bin/gcc 然后建一個軟連接,指向gcc-4.7。 命令:sudo ln -s /usr/bin/gcc-4.7 /usr/bin/gcc 然后可以通過命令:gcc -v 查看版本 相關(guān)資訊
發(fā)表評論
|
全國咨詢電話:400-611-6270,雙休日及節(jié)假日請致電值班手機(jī):15010390966
在線咨詢: 曹老師QQ(3337544669), 徐老師QQ(1462495461), 劉老師 QQ(3108687497)
企業(yè)培訓(xùn)洽談專線:010-82600901,院校合作洽談專線:010-82600350,在線咨詢:QQ(248856300)
Copyright 2004-2018 華清遠(yuǎn)見教育科技集團(tuán) 版權(quán)所有 ,京ICP備16055225號,京公海網(wǎng)安備11010802025203號