為什麼編譯提示找不到頭文件
Ⅰ 編譯時找不到頭文件有哪些可能原因
頭文件有兩種,一種是系統自定義的庫<>,一般編譯環境里會有默認配置路徑
另一種是自定義的頭文件"",這種可能需要在c文件的相同目錄下,
不在相同目錄下,就需要指定include路徑。一般都是h文件放一個文件夾,增加配置include路徑。
Ⅱ 編譯時找不到頭文件這個問題怎麼解決
你是否有試過編譯一個文件時,老是因為缺掉一些頭或庫文件而編譯不通過呢?下面給出一種方法來解決這個問題:
1.先安裝apt-filesudoapt-get install apt-filesudoapt-file update
2.假如make時,出現
main.c:21:21:
error: gtk/gtk.h: No such file or directory使用:sudoapt-file searchgtk.h
運行以上命令可能返回好多包,精簡一下sudoapt-file search gtk/gtk.h結果如下:
# apt-file search gtk/gtk.h
libgfcui-dev:
usr/include/gfc-2.0/gfc/gtk/gtk.hh
libgtk+2.0-directfb-dev:
usr/include/directfb/gtk-2.0/gtk/gtk.h
3.最後定位該頭文件所在的位置
wyylling@ubuntu:~/Gnome$ locate gtk.h
將該/usr/include/gtk-2.0/加入頭文件搜索路徑中即可
Ⅲ 用G++編譯時老報一些找不到頭文件的錯,但GCC就沒有
通常找不到指定函數不是因為編譯參數問題。而是你
g.cpp
中在include
f.h的時候沒有使用:
extern
"C"
{
#include"f.h"
}
因為C語言和cpp的編譯過程中的函數名稱修飾規則是不一樣的。當cpp引用C庫的時候必須告訴
編譯器
,哪些函數是
C函數
Ⅳ 有時VC編譯的時候找不到頭文件,但這個頭文件在工程裡面是有的,是怎麼回事
選擇
項目-設置settings-目錄directory-頭文件目錄分支。。。
將你的頭文件所在的文件夾添加到路徑列表中,點擊確定。
重新編譯,OK!
Ⅳ linux下gcc編譯的時候提示說頭文件找不到
-I 參數可以指定 header 地址。目錄地址沒有空格
不過你這個源代碼寫的是不是不符合規矩?或者你某些想法有錯誤。
寫不合通用規范的源代碼會被噴的。
Ⅵ C語言編譯為什麼找不到布爾的頭文件呢怎麼解決
C語言已經默認沒有stdbool.h了,因為這個頭文件不與任何庫文件相關,只是簡單的定義了true和false。這個你完全可以自己實現。
把下面代碼寫到
stdbool.h裡面
#ifndef
__STDBOOL_H
#define
__STDBOOL_H
#undef
bool
#undef
true
#undef
false
typedef
enum{
false=0,
true=1,
}bool;
#endif