You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt 5.15.2构建QObject依赖路径错误,如何指定绝对路径?

问题

在Windows 10系统下,使用Qt 5.15.2及C++编译器16.5.29911.84(x86_amd64)构建应用时,始终报错:

Dependent '..\..\..\..\..\Qt\5.15.2\msvc2019_64\include\QtCore\QObject does not exist

已尝试以下操作:

  • 确认QObject存在于指定路径(确实存在)
  • 在.pro文件中修改INCLUDEPATH,添加QObject所在路径"C:\Qt\5.15.2\msvc2019_64\include\QtCore"
  • 确认头文件中已正确包含#include <QObject>
  • 验证.pro文件中已添加QT += core
  • 在Windows中设置环境变量QTDir = C:\Qt\5.15.2\msvc2019_64,并将%QTDir%\bin添加到PATH
  • 卸载并重新安装Qt

每次修改后都会清理项目、运行qmake再构建,但仍报原错误。

更新:已定位到问题是makefile中的文件路径错误,将路径从..\..\..\..\..\Qt\5.15.2\*改为C:\Qt\5.15.2\*后应用可正常构建。请问如何在Qt中指定使用绝对路径而非相对路径?

解决方法

1. 强制qmake生成绝对路径Makefile

在项目的.pro文件中添加以下配置:

CONFIG += absolute_paths

该配置会让qmake在生成Makefile时,所有依赖路径默认使用绝对路径,替代自动生成的相对路径。

2. 手动指定Qt绝对路径变量

如果上述配置不生效,可在.pro文件中直接硬编码Qt的绝对路径,覆盖qmake的自动路径逻辑:

QT_INSTALL_PREFIX = C:/Qt/5.15.2/msvc2019_64
INCLUDEPATH += $$QT_INSTALL_PREFIX/include
INCLUDEPATH += $$QT_INSTALL_PREFIX/include/QtCore
LIBS += -L$$QT_INSTALL_PREFIX/lib

注意路径使用斜杠/或者转义反斜杠\\,避免Windows路径的转义冲突。

3. 修正Qt Kit配置

打开Qt Creator的工具 > 选项 > 构建和运行 > Kits,选中当前使用的MSVC2019_64 Kit:

  • 确认Qt版本选择的是C:\Qt\5.15.2\msvc2019_64
  • 点击Qt版本的详情按钮,检查其路径是否为绝对路径,若不是则手动修改为绝对路径
  • 重新选择项目的Kit,清理项目后重新运行qmake再构建

4. 简化项目路径层级

相对路径错误常和项目所在路径层级过深有关,导致生成的相对路径超出预期。可将项目移动到层级较浅的目录(比如C:\Projects下),减少路径解析出错的概率。

内容的提问来源于stack exchange,提问作者PrematureCorn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 03:48:17