gcc/g++編譯器的安裝與說明
1.gcc/g++編譯器的安裝
使用yum進行安裝需要進入root使用者
gcc yum install gcc
g++ yum install gcc-c++
2.gcc/g++的作用
將c/c++源**編譯成機器可識別的**(指令)
3.編譯過程
預處理通過預處理指令所包含的檔案內容插入程式中(展開原始檔的所有**)
gcc -e test.c -o test.i 產生乙個預處理後的檔案( .i檔案 )
編譯語法語義糾錯,呼叫匯程式設計序生成成彙編**
編譯時指定源程式,不用任何選項,會預設生成乙個a.out檔案
gcc -s test.i -o test.s 產生乙個匯程式設計序檔案( .s檔案 )
彙編將彙編**翻譯成機器所能識別的二進位制指令
gcc -c test.s -o test.o 產生乙個目標檔案( .o檔案)
鏈結鏈結庫,將所有**合到一起生成可執行檔案
gcc test.o -o test 產生乙個可執行檔案
缺點:冗餘度大,編譯出來的檔案比較大
優點:可執行檔案小,各個模組處於解耦狀態,且**復用性高
gcc預設的鏈結方式為動態鏈結
4.gcc/g++的區別與聯絡
1>對於*.c檔案,gcc會將它當成c程式,而g++會將它當成cpp程式
2>對於*.cpp檔案,gcc與g++都會當它為cpp程式
3>cpp編譯階段,g++會呼叫gcc
4>cpp鏈結階段,通常會用g++來完成,因為gcc命令不能自動與cpp程式使用的庫鏈結
5.gcc編譯器常用選項
-c 只生成目標檔案(*.o檔案),不鏈結
-e 只進行預處理,不編譯,生成預處理後的(*.i)檔案
-s 生成彙編檔案(*.s)檔案
-o 指定輸出的可執行檔名稱
-g 在編譯過程中產生除錯資訊
-w 禁止警告,有時會隱藏程式中的錯誤
-w 給出額外更詳細的警告
-wall 給出所有有用的警告資訊,有利於排查問題
linux上安裝GCC, G 編譯器
結束了無聊了業務培訓,公司總算給我們分配任務了,不過跟我想的有點遠了。我本來是想研究研究j2ee的框架原始碼以及架構,結果公司安排的是做linux mysql的集群,可能還要涉及到jboss的配置。於是乎,這兩天又開始重新接觸linux,之前學了乙個學期都忘的差不多了,虛擬機器裝系統用的都是不是很熟...
Linux編譯器 gcc g 使用
gcc是乙個編譯器,將我們寫的高階語言轉化成機器語言 gcc如何完成 格式 gcc 選項 要編譯的檔案 選項 目標檔案 預處理 進行巨集替換 展開所有 gcc e 例 gcc e main.c o main.i o是重新命名,使main.c預處理後生成的檔案名叫main.i 編譯 生成彙編 糾錯,沒...
Linux編譯器 gcc g 使用
gcc 選項 要編譯的檔案 選項 目標檔案 預處理 進行巨集替換 在c語言程式中,並沒有printf函式的定義,stdio.h中也只有該函式的宣告,沒有該函式的實現。系統把這些函式的實現放到指定的庫檔案中例如 libc.so.6,gcc會到系統預設的路徑中進行查詢,這就是連線的作用 建立方法 將包包...