在Visual Studio中为项目创建一个针对性的OBJ文件夹

8

是否可以像为BIN文件夹创建目标OBJ文件路径一样创建目标OBJ文件路径?您可以在项目属性中设置输出路径。示例路径如下: Bin\Debug\Windows Phone 7\ Bin\Debug\NETMF\ Bin\Debug....\

这里的一个用例是,如果我有多个针对不同平台的项目。在编译时,OBJ文件与BIN文件夹不同,OBJ文件被共享而不是分离。在编译时,会出现OBJ文件夹同时被利用并抛出错误的竞争条件。


不确定,但我必须遵循这个...我讨厌在不同的驱动器字母上在Dropbox/SkyDrive上进行开发,因此除非我重建等操作,否则符号无法解析。 - Jeff Wilcox
1个回答

7
在这里,我们谈论的是MSBUILD,您可以在项目中设置BaseIntermediaryOutputPath。如果您使用XML编辑器打开项目(我假设是.csproj),则会看到不同的调试/发布配置组的配置块。
所以类似于这样的内容(为每个配置选项进行单独编辑):
<PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectGuid>{A35097D8-80BC-4FA5-BECD-FF045C5566EC}</ProjectGuid>
    <OutputType>WinExe</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>WorkApplication</RootNamespace>
    <AssemblyName>WorkApplication</AssemblyName>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <FileAlignment>512</FileAlignment>
    <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
    <BaseIntermediateOutputPath>E:\OBJ-TEST</BaseIntermediateOutputPath>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>

3
需要注意的是,您需要针对项目文件中的每个配置都执行此操作。Release、Debug、Arm等等。 - Clint Rutkas
4
请注意,http://msdn.microsoft.com/en-us/library/bb629394.aspx 中还有项目文件中其他的 MSBuild 属性。需加以参考。 - Clint Rutkas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接