Qt Creator Windows 10 - "Use jom instead of nmake" 不工作

Qt Creator Windows 10 - "Use jom instead of nmake" not working

我正在使用 Qt 版本 5.5.1(但使用 5.6.1 GUI),我正在使用 MSVC++ 编译器 10.0 进行编译,并且我已经在选项 -> 构建 & [ 中检查了 "Use jom instead of nmake" 选项=43=] -> 常规菜单。我使用的是最新版本的 cmake,Options -> Build & 运行 -> Kits -> CMake generator 设置为 "CodeBlocks - NMake Makefiles"。老实说,我不知道最后一个选项是做什么的,它只是默认值。

我正在构建 运行 通过 QT 创建者 IDE。

如果我在 Projects -> Build&运行 -> Build Steps 中将 -j 添加到 "tool arguments",然后当我尝试编译时出现错误:

NMAKE:-1: error: U1065: invalid option 'j'

但是,我选择了 "Use jom instead of nmake",所以它应该使用 jom 并接受这个参数,不是吗?

我是不是漏掉了一步?

我找不到任何关于如何执行此操作的说明,我能找到的使用 jom 编译的唯一教程是通过命令行编译,我不想这样做。

编辑:这是与 How do I utilise all the cores for nmake? 不同的问题,因为这个问题专门询问为什么 Jom 解决方案(建议作为该问题的答案)不适用于我的设置。

edit 2:我想我可能已经找到原因了。 This bug report 建议您需要使用工具包中的 "CodeBlocks - NMake Makefiles JOM" 选项 -> cmake 生成器 options.This 仅支持 QtCreator 4.2.1 及更高版本。但是,我有这个,但它仍然不起作用。我现在得到错误:

C:\Program Files\CMake\share\cmake-3.8\Modules\CMakeTestCCompiler.cmake:51: error: The C compiler "C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/cl.exe" is not able to compile a simple test program. It fails with the following output: Change Dir: C:/GIT/CorteX/build/Debug/CMakeFiles/CMakeTmp

jom 需要 -j ,您可以在其中设置进程数,例如jom -j4。你不能只使用 -j 而不计数。

Nmake 文件可以由 Jom 本机使用,因此不需要在构建配置中从默认的 nmake 生成器更改 cmake 生成器。 cmake 生成器将您的 cmake 转换为您的本机构建系统格式(例如 make 或 nmake)。

(即项目 > 管理工具包 ... > 构建和运行 > 工具包。选择你的工具包。我有我的 Cmake 生成器:设置为 "CodeBlocks - Nmake Makefiles, Platform: , Toolset: ")。

您唯一需要的更改是向 运行 jom.exe 添加自定义构建步骤并禁用默认构建步骤,如 Qtcreator JOM setup.

N.b。 jom.exe 必须在您的 PATH 变量中,QtCreator 才能找到它。