2010-07-08 5 views
3

Я хотел бы построить все конфигурации проекта VS 2008 C++ в командной строке. Что-то вроде:Как создать все конфигурации проекта Visual Studio 2008 C++ в командной строке?

Devenv TheProject.vcproj/сборки/NOLOGO

Но это не работает, потому что команда/построить настаивает на конфигурацию после него, как это:

devenv TheProject.vcproj/build «Release | Win32»/nologo

Есть ли способ получить сборку командной строки всех конфигураций в файле vcproj?

ответ

2

Я думал, что вы можете делать то, что хотите, с MSBUILD, но, похоже, для этого это не намного лучше, чем DEVENV.

Вы все равно должны указывать каждую конфигурацию в командной строке, хотя было бы легко написать пакетный файл, чтобы выполнить это с помощью MSBUILD или DEVENV.

Похоже, что предыдущие версии среды разработки, возможно, поддерживали опцию «ВСЕ», но VS 2008 - нет.

http://social.msdn.microsoft.com/Forums/en-US/msbuild/thread/8701b3d0-d5c9-45fb-8dd4-e7700c8caca6/

+0

Дать пакетный файл для определения каждой конфигурации трудно, потому что я итерация десятки * .vcproj файлов, которые не имеют последовательный ряд конфигураций. Сценарий, который я использую, пересекает структуру каталогов, ища эти файлы * .vcproj. Его цель - убедиться, что каждый проект компилируется, и я хотел бы расширить его, чтобы проверить каждую конфигурацию каждого проекта. – Charles

+0

Файлы * .vcproj - это XML, поэтому вы можете подумать о написании программы для анализа файлов проекта и извлечения конфигураций и записи результатов в пакетный файл или конфигурацию MSBUILD. – Avalanchis

+0

Да. Это произошло со мной, но я пытался избежать этого. Вы можете себе представить, насколько прост в моем скрипте. Добавление логики для синтаксического анализа конфигураций из файлов vcproj увеличило бы размер и сложность по величинам. – Charles

0

Не использовали VS в течение длительного времени. Но панель свойств проекта используется для отображения командной строки, сгенерированной для связывания и компиляции проекта для конкретной конфигурации. Раньше он находился под вкладкой Advanced. Будет ли использование этой функции непосредственно из командной строки служить вашей цели? Этот метод не будет использовать VS IDE вообще.

В качестве альтернативы,

Шаги:

  1. Создать проект, который имеет зависимость от всех других проектов.

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

0

Непосредственно, но проекты могут быть зависеть от других проектов, поэтому вы можете иметь проект «все» или «установить» с зависимостью от всего остального.

 Смежные вопросы

  • Нет связанных вопросов^_^