gcc編譯器下載及安裝教程
時間:2018-03-08作者:華清遠見
Linux下變成的源碼要運行,必須先轉成二進制的機器碼。此時就需要編譯器,Linux系統下的Gcc(GNU C Compiler)是GNU推出的功能強大、性能優越的多平臺編譯器,是GNU的代表作品之一。gcc是可以在多種硬體平臺上編譯出可執行程序的超級編譯器,其執行效率與一般的編譯器相比平均效率要高20%~30%。 Gcc編譯器能將C、C++語言源程序通過編譯、連接成可執行文件,如果沒有給出可執行文件的名字,gcc將生成一個名為a.out的文件。 比如,下面這段源碼(文件名叫做test.c)。
#include<stdio.h> int main(void) { printf("Hello, world!\n"); return 0; } 編譯則使用gcc命令,gcc命令提供了非常多的命令選項。 一. 常用編譯命令選項 假設源程序文件名為test.c。 1. 無選項編譯鏈接 用法:#gcc test.c 作用:將test.c預處理、匯編、編譯并鏈接形成可執行文件。這里未指定輸出文件,默認輸出為a.out,如果需要執行,內核中必須支持該文件的格式,默認一般都是elf可執行程序 2. 選項 -o 用法:#gcc test.c -o test 作用:將test.c預處理、匯編、編譯并鏈接形成可執行文件test。-o選項用來指定輸出文件的文件名。 3. 選項 -E 用法:#gcc -E test.c -o test.i 作用:將test.c預處理輸出test.i文件,預處理其實就是處理#預處理符號,比如#include, #define, #if, #ifdef, #error等 4. 選項 -S 用法:#gcc -S test.i 作用:將預處理輸出文件test.i匯編成test.s文件。匯編語言對應匯編指令,默認gcc編譯成x86指令,如果需要編譯arm架構的,就必須使用交叉工具鏈 5. 選項 -c 用法:#gcc -c test.s 作用:將匯編輸出文件test.s編譯輸出test.o文件,二進制文件就是101010機器碼 6. 無選項鏈接 用法:#gcc test.o -o test 作用:將編譯輸出文件test.o鏈接成最終可執行文件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 由上面顯示可以看出默認安裝的是gcc-4.6,現在來改成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 查看版本 相關資訊
發表評論
|