msbuild脚本无法构建C ++ Builder 2010项目的特定构建配置

时间:2012-08-14 12:07:04

标签: msbuild c++builder c++builder-2010

我在C ++ Builder 2010中有一个项目组。它包含几个项目。除了 Debug Releae 之外,其中一个项目还有一个 Demo 构建配置,它是的< em>发布一个。

我遇到的问题是,如果我从构建脚本运行它,调用项目组文件并告诉它我想使用演示配置构建我得到一个关于<的错误em>未解决的WinMain 。我使用不存在的构建配置名称得到相同的错误。所以我最初的想法是,这必须是因为项目组中的其他项目没有 Demo 配置。但是,当我尝试从cmd对项目组文件运行msbuild时,传递它 Demo 它构建得很好。

C:\src\foo\AutoBuild> msbuild ..\foo.groupproj /t:build /p:Configuration=Demo

使用cmd中的msbuild构建特定项目也是如此。我已经检查过 Config / * Configuration *属性是通过每个<msbuild />任务调用继续执行的。它是。

在运行发布时,黑客攻击项目组( .groupproj )文件并强制它为相关项目运行 Demo

...

<Target Name="Foo:Make">
  <MSBuild Targets="Make" Projects="Foo.cbproj" Properties="Config=Demo"/>
</Target>

...

知道可能导致这种情况的原因吗?

更新

此外,通过在选择 Demo 时仅运行主构建脚本中的特定项目,它也可以正常工作。请注意, Release 构建版本之前已由构建脚本构建。

<Target Name="Foo:Build">

...

  <MSBuild Condition="$(Configuration)==''" Targets="Make" Projects="..\Server\Bar.groupproj" Properties="Config=Release" />
  <MSBuild Condition="$(Configuration)==''" Targets="Foo" Projects="..\Server\Bar.groupproj" Properties="Config=Demo" />

...

</Target>

0 个答案:

没有答案