【问题标题】:How to pass linker options to msbuild via command line?如何通过命令行将链接器选项传递给 msbuild?
【发布时间】:2015-10-13 02:01:06
【问题描述】:

是否可以通过 msbuild 的命令行将选项传递给链接器?例如,我想设置 VC 链接器选项/PROFILE。如何在不更改 C++ 项目文件的情况下做到这一点?

PS:Visual Studio Express 2012。

【问题讨论】:

标签: msbuild


【解决方案1】:

在项目文件中,链接器选项在ItemGroup 中设置,因此您不能简单地从命令行添加或覆盖它。相反,您必须让 msbuild 包含它们,这只能通过导入另一个 msbuild 文件来完成。支持此功能:如果您在命令行中设置ForceImportBeforeCppTargets,msbuild 将导入它指向的文件。

实际上:创建这个文件,我们称之为c:\props\profile.props

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemDefinitionGroup>
    <Link>
      <Profile>true</Profile>
    </Link>
  </ItemDefinitionGroup>
</Project>

然后像这样构建您的(未修改的)项目:

msbuild myProject.vcxproj /p:ForceImportBeforeCppTargets=c:\props\profile.props

【讨论】:

  • 这真的很有帮助。谢谢!
  • 请参阅 about - 如果这回答了您的问题,您应该将其标记为这样,以便将来的访问者清楚地知道提议的 sultion 有效
  • 我知道,但我的声誉低于 15,因此我无法将您的答案标记为有用。对不起。
  • 哇,终于有一个通过 msbuild 指定编译器选项的解决方案了!
猜你喜欢
  • 2016-11-05
  • 1970-01-01
  • 2019-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-01
相关资源
最近更新 更多