gcc編譯時候的小問題

2021-04-18 17:40:03 字數 345 閱讀 1624

每次編譯標準c寫的**,都會出現類似一下的warning:

warning: incompatible implicit declaration of built-in function 'strlen' ..之類的

但是每次都能編譯通過,原本不太在意,但是寫大makefile的時候,執行make難免有礙觀感,於是想辦法讓這些warning消失才行。

仔細查了這些warning出現的地方,一般都是字元控制函式,而這些函式的宣告一般都包含在 string.h 標頭檔案中,而這些函式同樣是gcc的內建函式,所以如果不include 雖然可以編譯通過,但是跟gcc的內建函式會衝突,導致warning 產生。#include 後就好了。

GCC編譯問題

gcc高版本 筆者gcc 6.3.0 編譯gcc低版本 筆者gcc 5.1.0 出現如下錯誤 cfns.gperf in function const char libc name p const char unsigned int cfns.gperf 101 1 error const char...

g 編譯的小問題

在編譯時,對於靜態連線庫,老是報錯。如,我現在有個靜態庫,名字為 libdig.a 本來編譯的時候,寫的是 g o test l.ldig test.c 老是不成功。把 ldig 拿到後面就行了。g o test l.test.c ldig 其實,想想也是,只有在編譯的時候才會去連線它。所以得把它們...

gcc編譯中注意的問題

例如在原始檔中如何我們的標頭檔案寫成 include head.c 表示在當前路徑查詢標頭檔案,如果標頭檔案的路徑不在當前路徑,我們可以通過一下方式指定標頭檔案的路徑。gcc hello.c i 標頭檔案路徑 o 可執行檔案 在我們的程式中往往都會有許多除錯程式,這些除錯程式在完成 後都是要去掉的,...