【问题标题】:Can't compile any Qt projects in Windows commandline, only in Qt Creator无法在 Windows 命令行中编译任何 Qt 项目,只能在 Qt Creator 中
【发布时间】: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 的一个完美例子。

标签: c++ qt makefile msvc12


【解决方案1】:

使用(或模仿)Qt 命令提示符(“Qt 5.x for desktop...”快捷方式),它将拥有您需要设置的 PATH。

【讨论】:

  • 对于任何检查此内容的人来说仅供参考,该 CMD 快捷方式是为我准备的,只需为您提供的任何内容更新 qt 程序名称即可。我不想要默认名称 Qt 5.5.1,因为我有多个 5.5.1 安装:"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Qt 5.5.1_x64\5.5\MSVC 2013 (64-bit)"
  • 要不乱用快捷方式,请使用快捷方式属性中显示的目标。对我来说,那是:C:\Windows\System32\cmd.exe /A /Q /K C:\Qt\Qt5.5.1_x64\5.5\msvc2013_64\bin\qtenv2.batC:\Qt\Qt5.5.1_x64 是我为我的 qt 安装而命名的目录——我认为它默认为 C:\Qt\Qt5.5.1
  • @kayleeFrye_onDeck 在 Win8 之前,我认为该快捷方式更容易发现(与“开始”菜单中的 Qt Creator 一起)。也许在 Win10 上更容易(再次),您使用的是哪个 Windows 版本?
  • 我使用的是 Windows 10
  • 因此,在 Windows 10 中,当我检查 Qt 文件夹时,我没有看到 CMD 快捷方式,但会出现 Linguist 和 Designer 之类的东西——我右键单击它们并选择“打开文件位置",并且它们与 cmd 快捷方式共享相同的文件位置。
猜你喜欢
  • 2023-02-02
  • 2013-02-24
  • 2011-07-02
  • 1970-01-01
  • 1970-01-01
  • 2020-12-01
  • 2013-10-12
  • 2014-12-10
  • 1970-01-01
相关资源
最近更新 更多