在Windows上使用QtCreator时,qmake找不到文件:
#include <glib/galloca.h>
我的.pro文件:
INCLUDEPATH += "C:/gstreamer/1.0/x86/include/gstreamer-1.0" \
"C:/gstreamer/1.0/x86/include" \
"C:/gstreamer/1.0/x86/include/glib-2.0/glib"
但是如果我输入行#include <glib/ga>
,自动完成会显示文件名“galloca.h”,所以我不知道为什么编译器会说“找不到文件”。该文件不在项目目录中,但这有问题吗?
答案 0 :(得分:0)
简单来说,#include
相对于INCLUDEPATH
起作用,并且两者都合并为一个路径字符串并传递给编译器。您在INCLUDEPATH
中使用绝对目录路径,因此完整的文件路径为
C:\gstreamer\1.0\x86\include\glib-2.0\glib\galloca.h
要解决您的问题,您必须使用以太网
C:/gstreamer/1.0/x86/include/glib-2.0/glib
+ #include <galloca.h>
或
C:/gstreamer/1.0/x86/include/glib-2.0
+ #include <glib/galloca.h>
您的IDE可能会递归扫描所有目录并从那里建议任何文件名,但在编译期间不会使用此信息。