第四節GCC常用的編譯命令
1.GCC常用選項
-E 預處理後即停止,不進行編譯、彙編及連接
-S 編譯後即停止,不進行彙編及連接
-C 編譯或彙編源文件,但不進行連接
-O file 指定輸出文件爲file
預處理::
gcc -E example.c -o example.i
編譯::
gcc -S example.i -o example.s
彙編::
gcc -c example.s -o example.o
連接::
gcc example.o -o example
2.警告選項
-Wall 啓用所有警告信息
-Werror 在發生警告時取消編譯操作,即將警報看做是錯誤
-w 禁用所有警告
3.優化選項
-OO:不進行優化處理
-O或-O1:進行基本的優化,
-O2:除了完成-O1級別的優化外,還要一些額外的調整工作,如處理器指令調度等,這是GNU發佈軟件的默認優化級別
-O3:除了完成-O2級別的優化外,還要進行一些與處理器特性相關的優化工作
-Os:生成最小的可執行文件,主要用在嵌入式
4.連接器選項
-Idirectory 向GCC的頭文件搜索路徑中添加新的目錄 //directory爲路徑名
-Ldirectory 向GCC的庫文件搜索路徑中添加新的目錄
-llibrary 提示連接程序在創建可執行文件時包含指定的庫文件
-static 強制使用靜態鏈接庫
-shared 生成動態庫文件
-E 預處理後即停止,不進行編譯、彙編及連接
-S 編譯後即停止,不進行彙編及連接
-C 編譯或彙編源文件,但不進行連接
-O file 指定輸出文件爲file
預處理::
gcc -E example.c -o example.i
編譯::
gcc -S example.i -o example.s
彙編::
gcc -c example.s -o example.o
連接::
gcc example.o -o example
2.警告選項
-Wall 啓用所有警告信息
-Werror 在發生警告時取消編譯操作,即將警報看做是錯誤
-w 禁用所有警告
3.優化選項
-OO:不進行優化處理
-O或-O1:進行基本的優化,
-O2:除了完成-O1級別的優化外,還要一些額外的調整工作,如處理器指令調度等,這是GNU發佈軟件的默認優化級別
-O3:除了完成-O2級別的優化外,還要進行一些與處理器特性相關的優化工作
-Os:生成最小的可執行文件,主要用在嵌入式
4.連接器選項
-Idirectory 向GCC的頭文件搜索路徑中添加新的目錄 //directory爲路徑名
-Ldirectory 向GCC的庫文件搜索路徑中添加新的目錄
-llibrary 提示連接程序在創建可執行文件時包含指定的庫文件
-static 強制使用靜態鏈接庫
-shared 生成動態庫文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.