Я использую Visual Studio 2008 в своей основной системе сборки. Я играл с Visual Studio 2010 на другом. Похоже, что инструмент по-прежнему хочет использовать только одно ядро при компиляции, если вы не укажете ключ /MP в переключателях компилятора (см. Как включить многопроцессорные /Core С++ компиляции в Visual Studio IDE (2008)?). Я должен сделать это для каждого проекта. Есть ли способ заставить ВС всегда делать это?
Всегда используйте флаг нескольких ядер (/MP) с Visual Studio?
Ответ 1
Создать переменную среды "CL" и установить ее в "/MP". Компилятор Microsoft cl.exe всегда содержит флаги командной строки с этой переменной.
Некоторые функции и параметры компилятора, такие как #import, не совместимы с флагом /MP. Вам нужно будет добавить /MP 1 в проекты, которые использовали #import в коде. Это отключит /MP для этих проектов.
Ответ 2
Вы можете создать лист свойств, который включает все ваши проекты, и установить флаг /MP
в этой странице свойств.
В Visual Studio 2010 вы можете поместить его в лист свойств Microsoft.Cpp.Win32.user, который по умолчанию включен в новые проекты (у него есть старые каталоги на Visual С++ и другие настройки по умолчанию, определенные в нем). Я не знаю, что изменение свойства свойства по умолчанию действительно хорошая идея, но это, безусловно, вариант.