Вопрос по – Как указать выходную папку MSbuild?

21

Когда я выполняю проект delphi 2009 с использованием командной строки MSBuild, выходные данные всегда отправляются на диск C:

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:OutDir="C:\Output\bin\"

Почему это происходит?

Спасибо & amp; С Уважением, Паван.

Ваш Ответ

2   ответа
24

документы говорят иначе, но попробуйте OutputPath вместо OutDir.

Да, вместо OutDir следует использовать OutputPath, документы в этом случае неверны.
Это лучше использоватьDCC_ExeOutput вместоOutputPathпотому что когда у вас естьPostBuildEvents и вы используете$(OutputPath), затем/p:OutputPath="xxx" будутNOT использоваться в$(OutputPath), но если вы используете/p:DCC_ExeOutput="xxx" тогда это будет работать правильно.
Я нашел это очень забавным:pseale.com/i-hate-you-outdir-parameter он показывает много вещей, которые могут пойти не так с OutDir.
Я пробовал это, но MSBuild, кажется, игнорируетOutputPath когда выходной каталог компоновщика указан в опциях проекта.
4

Для проектов Delphi вам нужно использовать DCC_ExeOutput, чтобы указать, куда должен идти EXE.

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:DCC_ExeOutput="C:\Output\bin\"

Загляните внутрь Test.dproj, чтобы найти другие опции, которые вы можете указать.

другие свойства, которые влияют на компилятор Delphi (DCC), можно найти здесь:http://stackoverflow.com/questions/what-are-the-msbuild-project-level-properties-for-delphi

Похожие вопросы