gcc有很多編譯選項,要想乙個乙個看完,工程比較浩大,而且估計看完了也記不住,只能遇到乙個記乙個吧!
今天遇到乙個問題,就是在定義函式的時候和c語言的內建函式重名了,導致編譯的時候報錯了:
warning: conflicting types for built-in function
平時一般都是想改改函式名不就得了,可突然冒出乙個想法,能不能不改了,於是乎就發現了-fno-builtin這個選項。它的含義即不使用c語言的內建函式,用法如下:
#gcc a.c -o a.out -fno-builtin
忽然又冒出了乙個想法,要是我有的函式想用內建函式,有的不想用,那該怎麼辦了? 於是乎我又發現了乙個編譯選項:-fno-builtin-function(其中function為要衝突的函式名),用法和上面的方法一致。
這個編譯選項,應該是見得比較多的。它表明當進行編譯鏈結的時候,鏈結庫名為library的庫進行編譯。實際上是在編譯的時候搜尋名字為liblibrary.a的檔案進行鏈結處理,它的搜尋路徑包括系統中的標準搜尋路徑(/lib和/usr/lib和/usr/local/lib等)和使用-l選項指定的路徑。
這個引數常常和-l選項一起出現,它表示將dir作為-l鏈結的搜尋路徑加入到-l的庫的搜尋列表中。 它的搜尋順序位於標準庫之後。
這個引數和-ldir的功能相似,它也表示將dir作為-l鏈結的搜尋路徑加入到-l的搜尋路徑列表中。它的搜尋順序位於標準庫之前。
這個選項被用來建立動態庫檔案,如gcc -shared a.c -o a.so.
GCC常用編譯選項
gcc編譯選項解析 gcc是linux下基於命令列的c語言編譯器,其基本的使用語法如下。gcc option filename 對於編譯c 的源程式,其基本語法如下 g option filename 其中option為gcc使用時的選項,而filename為需要gcc做編譯的處理的的檔名。就gcc...
gcc 常用編譯選項
g 加入除錯資訊 m64 64位 c 只做預處理 編譯和彙編,不鏈結,產生的是目標檔案 o檔案 s 只做預處理和編譯,把檔案編譯成為彙編 include 某個 簡單來說,就是便以某個檔案,需要另乙個檔案的時候,就可以用它設定,功能就相當於在 中使用 include,例如gcc hello.c inc...
常用GCC 編譯選項
x 指定檔案型別 如 gcc x c main.pig,用c編譯mian.pig檔案 o制定目標名稱,預設的時候,gcc 編譯出來的檔案是a.out,很難聽,如果 你和我有同感,改掉它,哈哈 例子用法 gcc o hello.exe hello.c 哦,windows用習慣了 m生成檔案關聯的資訊。...