MSBuild输出目录

时间:2017-06-12 20:28:15

标签: build compilation msbuild project

我正试图绝对控制MSBuild的输出。如果我跑:

msbuild project.msbuild

或:

msbuild project.msbuild /p:configuration=Debug

我将获得文件夹:

  • 调试

如果我跑:

msbuild project.msbuild /p:configuration=Release

我将获得文件夹:

  • 推出

我想要的输出目录结构如下:

  • 的Win32 \调试
  • 的Win32 \释放
  • 64 \调试
  • 64 \释放

我首先尝试过OutputPath,但什么都没发生。然后我尝试了以下内容:

<OutDir>$(Platform)\$(Configuration)\</OutDir>

现在我在指定的文件夹中获取已编译的二进制文件,但由于某种原因,创建旧的目录结构以包含目标文件。所以,如果我跑:

msbuild project.msbuild

我最终得到的是:

  • 调试(包含目标文件)
  • Win32 \ Debug(包含二进制文件)

我希望所有内容都在我指定的文件夹中,而不是默认的MSBuild决定的文件夹。

1 个答案:

答案 0 :(得分:0)

目标文件存储在“中间”目录中。 通过指定OutDir - 您可以指定二进制文件的位置。 要指定.obj文件的位置,您还应该尝试将IntermediateOutputPath指定为.obj文件的所需位置。

参见参考资料,例如:https://blogs.msdn.microsoft.com/kirillosenkov/2015/04/04/using-a-common-intermediate-and-output-directory-for-your-solution/