歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Gcc編譯C程序常用選項

Gcc編譯C程序常用選項

-o  指定目標文件名

-std=c99 用C99標准編譯

-Wall  警告全開

-c 只編譯不鏈接,生成中間文件

-g 生成調試信息

-O0 : 默認不優化(若要生成調試信息,最好不優化)

-O1 : 簡單優化,不進行速度與空間的權衡優化;

-O2 : 進一步的優化,包括了調度。(若要優化,該選項最適合,它是GNU發布軟件的默認優化級別;

-O3 : 雞肋,興許使程序速度更慢;

-funroll-loops : 展開循環,會使可執行文件增大,而速度是否增加取決於特定環境;

-Os : 生成最小執行文件;

-llibname 鏈接指定庫

注意GCC在鏈接庫的過程中對參數中庫的順序是有要求的,參數右側的庫會先於左邊的庫加載。

假如你要鏈接pthread庫,編譯命令可能是這樣的:gcc -std=gnu99 -Wall  -o server *.c -lpthread

但不能是這樣的:gcc -std=gnu99 -Wall  -lpthrad -o server *.c  #-lpthread必須放在後面。

Copyright © Linux教程網 All Rights Reserved