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

Posted

技术标签:

【中文标题】如何在 Qt Creator 中添加包含路径?【英文标题】:How to add include path in Qt Creator? 【发布时间】:2011-02-14 16:36:43 【问题描述】:

我正在使用 Qt creator 开发一个需要第三方库的项目。我想将标题添加到项目的包含路径中。我该怎么做?

【问题讨论】:

【参考方案1】:

如果您使用的是标准 Qt 构建系统 qmake,只需在 .pro 文件中添加一行,如 qmake Variable Reference 中所述:

INCLUDEPATH += <your path>

如果您使用自己的构建系统,您可以通过选择“基于 Makefile 的项目的导入”来创建项目。这将在您的项目目录中创建一些文件,包括名为&lt;your project name&gt;.includes 的文件。在该文件中,只需列出要包含的路径,每行一个。实际上,所有这些都是告诉 Qt Creator 在哪里寻找文件以索引以自动完成。您自己的构建系统必须以自己的方式处理包含路径。

作为explained in the Qt Creator Manual,&lt;your path&gt; 必须是绝对路径,但您可以使用$$PWD 来避免在.pro 文件中出现操作系统、主机或用户特定的条目,它指的是包含您的文件夹的文件夹.pro 文件,例如

INCLUDEPATH += $$PWD/code/include

【讨论】:

好的。这对我来说很好。包含路径是否有全局设置? 我不知道,但这并不意味着没有。我在选项中看不到任何类似的内容。 没关系。您的回答提到了INCLUDE_PATH,但您的意思是INCLUDEPATH。我会修复你的答案:) 最好使用QMAKE_CXXFLAGS 变量,因为INCLUDEPATH 是错误的(至少目前--QT5)。 IE。当我包含INCLUDEPATH += ../../../时,QT只是在这个路径中随机选择的目录,编译器得到了-I../../../GUI的选项。 @Hi-Angel:似乎指定的INCLUDEPATH 是相对于构建目录的,而不是相对于带有.pro 的目录,正如人们可能很容易假设的那样。如我对答案的编辑所示,您可以使用 `$$PWD' 获得一个明确定义的文件夹来启动包含路径。【参考方案2】:

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

只需在“项目”窗口中双击“您的项目名称”.pro,然后像我所做的那样在 .pro 文件的底部添加包含路径。

【讨论】:

使用绝对文件路径是一个非常糟糕的主意。始终尝试使用相对文件路径系统。 QT 是为跨平台而设计的。如果你在 Linux 机器上编译相同的代码,编译器将无法找到像 C:\ 这样的文件名,而且,即使你重命名源文件夹或将其移动到你自己计算机上的其他位置,它仍然会失败,并且你每次都必须编辑 .pro 文件 您是手动创建的 untitled.pro 文件还是在您启动项目时出现的?对 QtCreator 来说是全新的,所以需要一些解释。谢谢。【参考方案3】:

要添加全局包含路径,请在“附加参数”中的 Projects/Build/Build Steps 部分中为 qmake 使用自定义命令,如下所示: "QT+=your_qt_modules" "DEFINES+=your_defines"

我认为您可以通过这种方式使用 *.pro 文件中的任何命令。

【讨论】:

【参考方案4】:

如果您使用自定义 Makefile,您可以双击 .includes 文件并将其添加到那里。

【讨论】:

以上是关于如何在 Qt Creator 中添加包含路径?的主要内容,如果未能解决你的问题,请参考以下文章

QT creator如何在Ubuntu中配置环境变量path

如何在Qt Creator中添加库文件和头文件目录

在 Qt Creator 中将 TagLib 库添加到 Linux Qt 项目?

QT creator 如何调用VC写的静态库

qt creator 中如何使用c++库

如何在 Qt Creator 中添加可调整大小的 QVBoxLayout?