gcc編譯選項

gcc編譯選項:
-I:指定頭文件路徑;如 gcc -I./include
-D:定義一個宏;如 gcc -DHAVE_CONFIG_H,定義宏HAVE_CONFIG_H
-Wall:開啓全部錯誤提示,可理解爲warinig all
-g:編譯過程當中保留調試信息,以便gdb可以調試
-O2:指定編譯優化等級爲2,optimization
-pipe:指定編譯過程當中不一樣階段的通訊使用pipe管道(有些編譯器沒法讀取管道,目前GNU編譯器是ok的)
-Wp,-D_FORTIFY_SOURCE=2:將逗號分隔的選項傳遞給預處理器,其中FORTIFY_SOURCE選項用於指定在編譯時檢查緩衝區溢出的等級
-fexceptions:啓用異常處理,會產生額外的代碼用於處理異常,會佔用必定量的數據空間(gcc默認爲C++打開該選項,爲C關閉該選項)
-fstack-protector:開啓棧保護檢測,防止緩衝區異常
--param=ssp-buffer-size=4:--param用於控制一些用於優化的常量,好比內聯函數的指令數量限制等,
ssp-buffer-size用於控制預防堆棧溢出的緩衝區的下限值,和-fstack-protector選項一同使用
-m64:指定生成64位的x86-64架構代碼
-mtune=generic:爲指定的CPU架構優化代碼
-fPIC:生成位置無關的代碼,適用於動態連接
-fPIE:爲可執行文件生成位置無關代碼
————————————————
版權聲明:本文爲CSDN博主「Blue summer」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連接及本聲明。
原文連接:https://blog.csdn.net/u010039418/article/details/80455368架構

相關文章
相關標籤/搜索