如何在Qt Creator中添加包含路径?

185

我正在Qt Creator中开发一个需要使用第三方库的项目。我希望将这些头文件添加到项目的包含路径中。请问如何操作?

4个回答

263
如果您使用的是标准的Qt构建系统qmake,只需按照qmake变量参考中所述,在.pro文件中添加一行即可。
INCLUDEPATH += <your path>

如果您正在使用自己的构建系统,可以通过选择“导入基于Makefile的项目”来创建项目。这将在您的项目目录中创建一些文件,包括一个名为<your project name>.includes的文件。在该文件中,只需按行列出要包含的路径即可。实际上,所有这些都是告诉Qt Creator在哪里查找用于自动完成的文件。您自己的构建系统将必须以自己的方式处理包含路径。
Qt Creator手册所述,<your path>必须是绝对路径,但是您可以使用$$PWD来避免在.pro文件中使用特定于操作系统、主机或用户的条目,$$PWD指的是包含您的.pro文件的文件夹。
INCLUDEPATH += $$PWD/code/include

3
好的,这对我来说完全没问题。是否有一个全局设置包含路径的选项? - Nathan Osman
2
我不知道,但这并不意味着没有。我在选项中没有看到任何类似的东西。 - Jason B
4
没关系。你的回答提到了INCLUDE_PATH,但你的意思是INCLUDEPATH。我会修正你的回答 :) - Nathan Osman
8
最好使用 QMAKE_CXXFLAGS 变量,因为 INCLUDEPATH 变量目前存在问题(至少在QT5中)。例如,当我添加了 INCLUDEPATH += ../../../ 后,QT会随机选择此路径中的某个目录,然后编译器会得到 -I../../../GUI 选项。 - Hi-Angel
5
似乎指定的 INCLUDEPATH 是相对于构建目录而不是相对于 .pro 文件所在目录,这容易让人误解。如我对答案做的修改所示,您可以使用 $$PWD 来获取一个明确定义的文件夹作为包含路径的起始点。 - ssc
显示剩余7条评论

11

对于像我一样完全不熟悉Qt Creator的人,你可以在Qt Creator中修改项目的 .pro 文件:

输入图像描述

只需在“项目”窗口中双击“your project name.pro”,并将包含路径添加到 .pro 文件底部,就像我所做的那样。


9
使用绝对文件路径是一个非常糟糕的想法。请尽可能使用相对文件路径系统。QT旨在实现跨平台。如果你在Linux机器上编译相同的代码,编译器将无法找到那些类似C:\的文件名。此外,即使你重命名源文件夹或将其移动到计算机上的其他位置,它仍然会失败,你每次都需要编辑.pro文件。 - Shivam Jha
你是手动创建了untitled.pro文件还是在启动项目时自动生成的?我对QtCreator完全不熟悉,需要一些解释。谢谢。 - Aztec-3x5

8
要添加全局包含路径,请在“项目/构建/构建步骤”部分中使用qmake的自定义命令,在“附加参数”中添加以下内容:"QT+=your_qt_modules" "DEFINES+=your_defines"。我认为您可以以这种方式使用*.pro文件中的任何命令。

2
如果您使用自定义的Makefiles,您可以双击.includes文件并在其中添加它。"最初的回答"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接