gcc優(yōu)化選項 gcc編譯優(yōu)化做了哪些事?
gcc編譯優(yōu)化做了哪些事?基本用法,不打開優(yōu)化,生成可執(zhí)行文件Hello:打開所有優(yōu)化:有調(diào)試信息,調(diào)試時可以知道相應(yīng)的代碼位置。調(diào)試時,最好不要開始優(yōu)化(或降低優(yōu)化級別),除非你有特殊的需要:你可以
gcc編譯優(yōu)化做了哪些事?
基本用法,不打開優(yōu)化,生成可執(zhí)行文件Hello:
打開所有優(yōu)化:有調(diào)試信息,調(diào)試時可以知道相應(yīng)的代碼位置。調(diào)試時,最好不要開始優(yōu)化(或降低優(yōu)化級別),除非你有特殊的需要:你可以閱讀O”Reilly的C Cookbook,里面講了一些工程方面的東西,比如如何使用GCC、Cl、ICC生成可執(zhí)行文件、靜態(tài)庫、動態(tài)庫。。。
GCC的編譯器優(yōu)化程度如何?
優(yōu)化編譯的參數(shù)是:-o[注,大寫o,來自英文optimization]-O1[優(yōu)化1,普通優(yōu)化]-O2[優(yōu)化2,高級優(yōu)化]-O3[優(yōu)化3,最高優(yōu)化]-o0未優(yōu)化
默認(rèn)的編譯器設(shè)置是通過全局變量設(shè)置:
進(jìn)入命令模式,鍵入命令:VI/etc/profile
在打開的文件中,添加:
path=$path:$GCCupath/bin
其中$GCCupath是編譯器的安裝路徑
例如,我的是:
path=$path
/opt/codesource/arm-2008q3/bin
/opt/codesource/arm-2008q3是我的GCC安裝路徑。
然后保存并退出。重新啟動后,將有一個默認(rèn)的編譯器。
GCC的編譯器優(yōu)化程度如何?
ICC針對英特爾處理器進(jìn)行了優(yōu)化,許多優(yōu)化開關(guān)在默認(rèn)情況下處于打開狀態(tài)。
GCC是一個跨平臺編譯器,包括支持arm體系結(jié)構(gòu)的處理器,因此其某些開關(guān)在默認(rèn)情況下處于關(guān)閉狀態(tài)。如果優(yōu)化是完全開放的,那么ICC和GCC編譯程序的效率沒有差別。而且由于優(yōu)化,ICC會出現(xiàn)很多奇怪的bug。另外,國際商會收費,而免費版的國際商會有很多限制。