【发布时间】:2016-06-10 13:19:16
【问题描述】:
我开始搞乱 Qt,而且我在他们的 IDE 中编译项目没有任何问题。命令行是一个不同的故事。 Qt Creator 很酷,但我需要自动化构建。
没有比这更简单的了:
untitled.pro 内容:
SOURCES += \
source.cpp
source.cpp 内容:
int main()
{
return 0;
}
在编译输出中,它显然是这样做的:
C:\Qt\Qt5.5.1_x64\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
所以,我打开 CMD.exe,然后运行以下命令:
C:\MyProjectDir>C:\Qt\Qt5.5.1_x64\5.5\msvc2013_64\bin\qmake.exe
这使我的调试、发布、.qmake.stash、Makefile、Makefile.Debug 和 Makefile.Release 文件和目录。
接下来,我跑了:
C:\MyProjectDir>C:\Qt\Qt5.5.1_x64\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
而且我总是收到这个错误:
LINK : 致命错误 LNK1104: 无法打开文件 'shell32.lib' jom: C:\MyProjectDir\Makefile.Debug [debug\untitled.exe] 错误 1104
我做错了什么?我也给了 nmake 一个镜头,但这也没有用。我宁愿用jom。
对于这个特定项目,它使用的是 msvc2013_64-5.5.1 pre-comp'd 安装程序
编辑:由于 cmets 中提到了 nmake,因此这里是 nmake 的错误输出:
LINK:致命错误 LNK1181:无法打开输入文件 'shell32.lib' NMAKE : 致命错误 U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.EXE"' : return code '0x49d' Stop. NMAKE : 致命错误 U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\nmake.exe"' : 返回码 '0x2' 停止。
【问题讨论】:
-
在执行 qmake 后输入'make'就可以了。
-
它没有。我在答案的底部解释了这一点。
-
能否请您更新您的完整,pro 文件
-
@kayleeFrye_onDeck 你试过 Qt 命令行快捷方式吗?
-
作为 Ubuntu(或通常在 Linux 中)的旁注,如果从软件包存储库安装 Qt 工具,则无需设置任何内容。一切都在开箱即用的命令行中工作。这个问题是我在 Qt 开发中更喜欢 Ubuntu 的一个完美例子。