天天看點

GCC 選項和參數

-g 為生成的調試資訊的詳細程度, 3 為最詳細, 預設為2;

-D在編譯時定義一個宏

-U在編譯時反定義一個宏

-Wall 允許發出GCC能夠提供的所有有用的警告。也可以用-W{warning}來标記指定的警告。

-Wextra -Werror -Wconversion -Wno-unused-parameter -Wold-style-cast -Woverloaded-virtual -Wpointer-arith -Wshadow -Wwrite-strings

-march=native m參數為硬體模式,通過确定編譯機器的處理器類型來調整編譯時的cpu類型

-rdynamic 傳遞 -export-dynamic 選項給 ELF 連接配接器,

-O為優化選項

    0:關閉優化,當沒有設定-O時的預設是這個等級。通常不使用這個參數。

    1:這是最基本的優化。編譯器會在較少的編譯時間内盡可能生成更快更小的代碼。

    2:-O1的進階。同時多了一些選項。一般的 編譯推薦使用這個等級。

    3:這個等級最高也最危險。會延長編譯時間,如果編譯所有的軟體包将産生更大體積更耗記憶體的二進制檔案,是以在gcc4.x的情況下不應全局啟用。

     s:這個等級用來優化代碼的大小。啟用了-O2等級時不增加磁盤空間的選項。這對于磁盤空間極其緊張或者CPU緩存較小的機器非常有用。

-static 連結時使用靜态庫

繼續閱讀