我在我的主构建系统上使用Visual Studio 2008。我一直在玩另一个Visual Studio 2010。看起来该工具在编译时仍然只想使用一个内核,除非在编译器开关中指定/ MP开关(参见How do I turn on multi-CPU/Core C++ compiles in the Visual Studio IDE (2008)?)。我必须为每个项目做这件事。有没有办法让VS总是这样做?
答案 0 :(得分:16)
创建环境变量“CL”并将其设置为“/ MP”。微软编译器cl.exe总是在此变量前面加上命令行标志。
某些编译器功能和选项(如#import)与/ MP标志不兼容。您需要将/ MP1添加到代码中使用#import的项目中。这将禁用这些项目的/ MP。
答案 1 :(得分:6)
您可以创建所有项目都包含的property sheet,并在该属性表中设置/MP
标记。
在Visual Studio 2010中,可以将其放在Microsoft.Cpp.Win32.user属性表中,默认情况下它包含在新项目中(它具有旧的Visual C ++目录和其他默认值)其中定义的设置)。我不知道修改默认属性表是真的一个好主意,但它肯定是一个选项。