【问题标题】:MSBuild output directoryMSBuild 输出目录
【发布时间】:2017-11-14 10:42:31
【问题描述】:

我正在尝试对 MSBuild 的输出进行绝对控制。如果我跑:

msbuild project.msbuild

或:

msbuild project.msbuild /p:configuration=Debug

我会得到文件夹:

  • 调试

如果我跑:

msbuild project.msbuild /p:configuration=Release

我会得到文件夹:

  • 发布

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

  • Win32\调试
  • Win32\Release
  • x64\调试
  • x64\发布

我首先尝试了 OutputPath,但没有任何反应。然后我尝试了以下方法:

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

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

msbuild project.msbuild

我最终得到的是:

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

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

【问题讨论】:

    标签: build compilation msbuild project


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多