2010年12月8日 星期三

[Linux 教學] gcc 常用編譯參數

轉載自 這裡 
語法 : 
gcc [option] filename 

參數 | 功能 

-c | 只做編譯(不做連結)
-S | 輸出組譯碼
-E | 將預處理結果顯示
-o filename | 指定輸出檔名
-ansi | 程式要求依據ansi c標準
-Dmacro | 使定義巨集(marco)為有效
-Dmarco=defn | 使定義巨集(marco)為defn
-Wa,option | 將選項(option)傳給組譯器
-wl,option | 將選項(option)傳給連結器
-I | 追加include檔案的搜尋路徑
-L | 追加library檔案的搜尋路徑
-l | 指定連結的函式庫
-Wall | 顯示所有的警告訊息
-g | 編入除錯資訊(要使用GDB除錯一定要加)
-O2 | 做最佳化


使用範例 : 
* 對 a.c, b.c c.c 進行編譯並產出 file 檔案. 
gcc -o file a.c b.c c.c 

* 對test.c 進行編譯並加入除錯訊息與顯示所有警告訊息並產出檔案 test 
gcc -Wall -g -o test test.c 

* 對test1.c 進行編譯且使用 my_lib 的 library 並到 library_path 下找對應的 library, 最後 Include 進來在include_path 下的檔案. 最後輸出成檔案 test 
gcc -Iinclude_path -Llibrary_path -lmy_lib -o test1 test1.c 

沒有留言:

張貼留言

[Git 常見問題] error: The following untracked working tree files would be overwritten by merge

  Source From  Here 方案1: // x -----删除忽略文件已经对 git 来说不识别的文件 // d -----删除未被添加到 git 的路径中的文件 // f -----强制运行 #   git clean -d -fx 方案2: 今天在服务器上  gi...