如何设置MSBuild VC++目录

Ron*_*lev 12 msbuild visual-studio-2005

我有一个混合的VB.NET和C++项目的解决方案.使用Visual Studio 2005时,您可以设置"工具 - >选项 - >项目和解决方案 - > VC++目录",以帮助编译器找到您的包含文件.使用MSBuild构建相同的解决方案时,我看不到如何传递这些设置.如果没有指定此路径,C++将无法编译.从Visual Studio构建此解决方案时,它可以完美地构建.

为MSBUild传递此路径的方法是什么?

编辑:看起来MSBuild没有将路径(或/ u开关)传递给vcbuild.从VCBuild开始,取而代之的是失败.

Pau*_*ius 13

要设置包含目录,可以将它们添加到INCLUDE环境变量中.您使用与PATH环境相同的格式.变量 - 用分号分隔路径.

要设置库目录 - 您可以通过将它们放入LIB环境变量中以类似的方式执行此操作.

要设置环境变量,只需右键单击"我的电脑",选择"属性".然后转到"高级"选项卡,然后有一个名为"环境变量"的按钮.

或者,您可以从BATCH脚本运行MSBuild,在这种情况下,在调用MSBuild之前,您可以设置INCLUDE和LIB变量,如下所示:

set INCLUDE=C:\Libraries\LibA\Include
set LIB=C:\Libraries\LibA\Lib\x86
Run Code Online (Sandbox Code Playgroud)

  • 你必须添加`/ p:"VCBuildAdditionalOptions =/useenv"`到MSBuild参数,以便它采用INCLUDE和LIB变量 (2认同)

小智 5

...并且您可能还想将 %INCLUDE% 和 %LIB% 附加到您的变量中以避免覆盖它们

set INCLUDE=C:\Libraries\LibA\Include;%INCLUDE%
set LIB=C:\Libraries\LibA\Lib\x86;%LIB%
Run Code Online (Sandbox Code Playgroud)


Sap*_*en2 5

您可以使用/p[roperty]:useenv=trueswitch 在较新版本的 MSBuild 中转发环境变量。在此处查看全文http://blogs.msdn.com/b/vcblog/archive/2010/01/11/vcbuild-vs-c-msbuild-on-the-command-line.aspx