我刚买了一台新的四核计算机并注意到nmake只使用了一个进程。

我曾经使用过具有开关-j4的make来启动4个进程。什么是nmake等价物?

[编辑] 根据以下信息,我可以在qmake项目文件中添加命令:

QMAKE_CXXFLAGS + = / MP

这对我有效。非常感谢。

有帮助吗?

解决方案

根据 MSDN ,没有 nmake 的选项。

然而,您可以使用VC ++命令行编译器使用 / MP 选项并同时传递多个文件,使编译器并行构建多个文件:

> cl /MP a.cpp b.cpp c.cpp

但请注意,大多数Makefile不会像这样调用编译器 - 它们通常会为每个单独的源文件单独调用编译器,这会阻止 / MP 选项执行任何有用的操作。

其他提示

告诉 nmake 使用所有核心的另一种非Qt相关的通用方法是将环境变量 CL 设置为 / MP

set CL=/MP
nmake

将使用所有CPU核心。

CMake 2.8.1 RC1 ,至于写这篇文章的时间已经准备好了,确实为NMake带来了新的生成器,它被称为 NMake Makefiles JOM 它会生成具有jom特定设置的NMake,这是替换NMake的下降。因此,它使用NMake为多处理启用构建。

Incredibuild 声称能够在多个核心/多台计算机上运行nmake构建。我没有任何经验。

这对普通的makefile不起作用,但Visual Studio 2005中有一个设置允许您同时构建多个.vcproj文件(假设一个不依赖于另一个)。工具 - >选项 - >项目和解决方案 - >构建和运行 - > X 最大并行项目构建数。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top