我如何利用nmake的所有核心?

我刚拿到一台新的四核电脑,注意到nmake只用了一个进程。

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

基于以下信息,我已经能够添加一个命令到我的qmake项目文件:

QMAKE_CXXFLAGS + = / MP

这对我有效。 非常感谢。

根据MSDN , nmake没有这个选项。

但是,您可以通过在VC ++命令行编译器中使用/MP选项并同时传递多个文件,使编译器并行构build多个文件:

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

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

告诉nmake使用所有内核的另一个通用的非Qt相关的方法是将环境variablesCL设置为/MP

 set CL=/MP nmake 

将使用所有的CPU核心。

CMake 2.8.1 RC1在编写本文时已经准备好尝试,它为NMake带来了新的发电机,这个发电机被称为NMake Makefiles JOM ,它为NMOM提供了特定的设置,这是NMO替代品的下降。 因此,它使用NMake进行多处理能力build设。

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

快速searchurl为: http : //msdn.microsoft.com/en-us/library/bb385193.aspx

这对于普通的makefile不起作用,但是在Visual Studio 2005中有一个设置,可以让你同时创build多个.vcproj文件(假设一个不依赖另一个)。 工具 – >选项 – >项目和解决scheme – >生成并运行 – > X最大并行项目数量。