如何在 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 的项目的导入”来创建项目。这将在您的项目目录中创建一些文件,包括名为<your project name>.includes
的文件。在该文件中,只需列出要包含的路径,每行一个。实际上,所有这些都是告诉 Qt Creator 在哪里寻找文件以索引以自动完成。您自己的构建系统必须以自己的方式处理包含路径。
作为explained in the Qt Creator Manual,<your path>
必须是绝对路径,但您可以使用$$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