是否可以通过msbuild的comamnd行将选项传递给链接器?例如,我想设置VC链接器选项/PROFILE。如何在不更改C ++项目文件的情况下执行此操作?
PS:Visual Studio Express 2012。
答案 0 :(得分:21)
在项目文件中,链接器选项在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