Всегда использовать флаг нескольких ядер (/ MP) с Visual Studio? - PullRequest
13 голосов
/ 23 апреля 2010

Я использую Visual Studio 2008 в моей основной системе сборки. Я играл с Visual Studio 2010 на другом. Похоже, что инструмент все еще хочет использовать только одно ядро ​​при компиляции, если вы не укажете ключ / MP в ключах компилятора (см. Как включить компиляцию с несколькими CPU / Core C ++ в IDE Visual Studio (2008) ). Я должен сделать это для каждого проекта. Есть ли способ заставить VS всегда делать это?

Ответы [ 2 ]

16 голосов
/ 03 апреля 2012

Создайте переменную окружения "CL" и установите для нее "/ MP". Microsoft's compiler cl.exe всегда с этой переменной ставит флаги командной строки.

Некоторые функции и параметры компилятора, такие как #import, не совместимы с флагом / MP. Вам нужно будет добавить / MP1 к проектам, используемым в коде #import. Это отключит / MP для этих проектов.

6 голосов
/ 23 апреля 2010

Вы можете создать лист свойств , который включен во все ваши проекты, и установить флаг /MP на этом листе свойств.

В Visual Studio 2010 вы могли бы поместить его в лист свойств Microsoft.Cpp.Win32.user, который включен в новые проекты по умолчанию (он имеет старые каталоги Visual C ++ и другие параметры по умолчанию). определены в нем). Я не знаю, что изменение листа свойств по умолчанию действительно хорошая идея, но это, безусловно, вариант.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...