【发布时间】:2014-12-08 10:26:39
【问题描述】:
我目前正在从事一个便携式项目。为了更容易在 linux 和 windows 上编译,我想使用一个 .pro 文件,该文件将在 linux 上生成一个 Makefile,在 windows 上生成一个 Visual Studio 项目。
但是,我在一个非常基本的示例上遇到了问题。
这是我的 .pro 文件:
TEMPLATE = app
TARGET = client
CONFIG += debug
SOURCES += src/main.cpp
我的 main.cpp 只包含一个空的 main:
int main(void) { return 0; }
然后,我只需打开我的 Visual Studio 控制台,在我的项目文件夹中 cd 并运行 qmake.exe -spec win32-msvc2013 -tp vc。
这会生成预期的 vcxproj 文件,我可以使用 Visual Studio 打开该文件。
程序在视觉上编译得很好,但我在执行过程中遇到了错误:Qt5Cored.dll missing。
我已验证:
- 在项目属性中,Qt lib 目录已添加到库目录中
- Qt5Cored.dll 存在(并且位于 Qt lib 目录中)
- 我在调试环境下编译执行
其他信息:
- Qt 安装良好
- 当我通过 Visual Studio 创建 Qt5 项目时,它运行良好(但这不是我想要的)。
当我使用 Qt 插件手动导入 .pro 文件时,生成的 vcxproj 运行良好(执行过程中没有错误):有什么区别?为什么 qmake 不起作用,但手动导入可以?我是否错过了使 qmake 工作的东西?
【问题讨论】:
-
Qt5Cored.dll 被放置在 Qt 安装的“bin”目录中。要运行没有问题,您可以添加到您的 PATH Qt bin 目录,但不要忘记将来您这样做了 :)
-
没错!成功了,谢谢:)
标签: c++ visual-studio qt dll qmake