解决 Cocos2d-x 3.2 error C1041: 无法打开程序数据库vc120.pdb

前端之家收集整理的这篇文章主要介绍了解决 Cocos2d-x 3.2 error C1041: 无法打开程序数据库vc120.pdb前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Cocos2d-x 3.2最高支持的VS版本为2012,我在VS2013上编译新建立的项目遇到错误

错误 1 error C1041: 无法打开程序数据库“x:\cocos2d-x-3.2\projects\hellococo\cocos2d\external\chipmunk\proj.win32\debug.win32\vc120.pdb”;如果要将多个 CL.EXE 写入同一个 .PDB 文件,请使用 /FS

单个项目解决方

解决方案是为项目添加/FS (Force Synchronous PDB Writes)编译选项,具体位置在:

一劳永逸的解决方

直接修改cocos的项目模板templates\cpp-template-default\proj.win32\HelloCpp.vcxproj为:

      1. <?xmlversion="1.0"encoding"utf-8"?>
      1. <ProjectDefaultTargets="Build"ToolsVersion"12.0"xmlns"http://schemas.microsoft.com/developer/msbuild/2003">
      1. <ItemGroupLabel"ProjectConfigurations">
      1. <ProjectConfigurationInclude"Debug|Win32">
      1. <Configuration>Debug</Configuration>
      1. <Platform>Win32</Platform>
      1. </ProjectConfiguration>
      1. "Release|Win32">
      1. Release</Configuration>
      1. </Platform>
      1. </ProjectConfiguration>
      1. </ItemGroup>
      1. <PropertyGroup"Globals"<ProjectGuid>{76A39BB2-9B84-4C65-98A5-654D86B86F2A}</ProjectGuid>
      1. <RootNamespace>test_win32</RootNamespace>
      1. <Keyword>Win32Proj</Keyword>
      1. </PropertyGroup>
      1. <ImportProject"$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
      1. Condition"'$(Configuration)|$(Platform)'=='Release|Win32'""Configuration">
      1. <ConfigurationType>Application</ConfigurationType>
      1. <CharacterSet>Unicode</CharacterSet>
      1. <WholeProgramOptimization>true</WholeProgramOptimization>
      1. <PlatformToolset"'$(VisualStudioVersion)'=='10.0'">v100</PlatformToolset>
      1. "'$(VisualStudioVersion)'=='11.0'"v110</PlatformToolset>
      1. "'$(VisualStudioVersion)'=='11.0'andexists('$(MSBuildProgramFiles32)\MicrosoftSDKs\Windows\v7.1A')"v110_xp</PlatformToolset>
      1. <PlatformToolset>v120</PlatformToolset>
      1. "'$(Configuration)|$(Platform)'=='Debug|Win32'"</ConfigurationType>
      1. </CharacterSet>
      1. </PlatformToolset>
      1. </PlatformToolset>
      1. </PropertyGroup>
      1. "$(VCTargetsPath)\Microsoft.Cpp.props"/>
      1. <ImportGroup"ExtensionSettings">
      1. </ImportGroup>
      1. "PropertySheets""$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props""exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')""LocalAppDataPlatform"/>
      1. "..\cocos2d\cocos\2d\cocos2dx.props"/>
      1. "..\cocos2d\cocos\2d\cocos2d_headers.props"/>
      1. </ImportGroup>
      1. />
      1. />
      1. "UserMacros"/>
      1. <PropertyGroup>
      1. <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
      1. <OutDir"'$(Configuration)|$(Platform)'=='Debug|Win32'"$(SolutionDir)$(Configuration).win32\</OutDir>
      1. <IntDir$(Configuration).win32\</IntDir>
      1. <LinkIncremental</LinkIncremental>
      1. "'$(Configuration)|$(Platform)'=='Release|Win32'"</OutDir>
      1. </IntDir>
      1. false</LinkIncremental>
      1. <CodeAnalysisRuleSetAllRules.ruleset</CodeAnalysisRuleSet>
      1. <CodeAnalysisRules<CodeAnalysisRuleAssemblies</CodeAnalysisRuleSet>
      1. />
      1. </PropertyGroup>
      1. >
      1. <LibraryPath>$(MSBuildProgramFiles32)\MicrosoftSDKs\Windows\v7.1A\lib;$(LibraryPath)</LibraryPath>
      1. </LibraryPath>
      1. </PropertyGroup>
      1. <ItemDefinitionGroup>
      1. <ClCompile>
      1. <Optimization>Disabled</Optimization>
      1. <AdditionalIncludeDirectories>$(EngineRoot)cocos\audio\include;$(EngineRoot)external;$(EngineRoot)external\chipmunk\include\chipmunk;$(EngineRoot)extensions;..\Classes;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      1. <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USE_MATH_DEFINES;GL_GLEXT_PROTOTYPES;CC_ENABLE_CHIPMUNK_INTEGRATION=1;COCOS2D_DEBUG=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      1. <MinimalRebuild></MinimalRebuild>
      1. <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      1. <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
      1. <PrecompiledHeader>
      1. </PrecompiledHeader>
      1. <WarningLevel>Level3</WarningLevel>
      1. <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
      1. <DisableSpecificWarnings>4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
      1. <MultiProcessorCompilation></MultiProcessorCompilation>
      1. <AdditionalOptions>/FS%(AdditionalOptions)</AdditionalOptions>
      1. </ClCompile>
      1. <Link>
      1. <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
      1. <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
      1. <AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
      1. <GenerateDebugInformation></GenerateDebugInformation>
      1. <SubSystem>Windows</SubSystem>
      1. <TargetMachine>MachineX86</TargetMachine>
      1. </Link>
      1. <PostBuildEvent>
      1. <Command>
      1. </Command>
      1. </PostBuildEvent>
      1. <PreLinkEvent>
      1. <Command>ifnotexist"$(OutDir)"mkdir"$(OutDir)"
      1. xcopy/Y/Q"$(EngineRoot)external\websockets\prebuilt\win32\*.*""$(OutDir)"</Command>
      1. </PreLinkEvent>
      1. </ItemDefinitionGroup>
      1. <ClCompile>
      1. MaxSpeed</Optimization>
      1. <IntrinsicFunctions></IntrinsicFunctions>
      1. </AdditionalIncludeDirectories>
      1. WIN32;NDEBUG;_WINDOWS;_USE_MATH_DEFINES;GL_GLEXT_PROTOTYPES;CC_ENABLE_CHIPMUNK_INTEGRATION=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      1. MultiThreadedDLL</RuntimeLibrary>
      1. <FunctionLevelLinking></FunctionLevelLinking>
      1. <PrecompiledHeader>
      1. </PrecompiledHeader>
      1. </WarningLevel>
      1. ProgramDatabase</DebugInformationFormat>
      1. </DisableSpecificWarnings>
      1. </MultiProcessorCompilation>
      1. </ClCompile>
      1. <Link>
      1. libcurl_imp.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>
      1. </OutputFile>
      1. </AdditionalLibraryDirectories>
      1. </GenerateDebugInformation>
      1. </SubSystem>
      1. <OptimizeReferences></OptimizeReferences>
      1. <EnableCOMDATFolding></EnableCOMDATFolding>
      1. </TargetMachine>
      1. </Link>
      1. <PostBuildEvent>
      1. <Command>
      1. </PostBuildEvent>
      1. <PreLinkEvent>
      1. ifnotexist"$(OutDir)"mkdir"$(OutDir)"
      1. </Command>
      1. </PreLinkEvent>
      1. </ItemDefinitionGroup>
      1. <ItemGroup>
      1. <ClCompile"..\Classes\AppDelegate.cpp""..\Classes\HelloWorldScene.cpp""main.cpp"<ItemGroup>
      1. <ClInclude"..\Classes\AppDelegate.h"/>
      1. "..\Classes\HelloWorldScene.h""main.h"</ItemGroup>
      1. <ProjectReference"..\cocos2d\cocos\2d\cocos2d.vcxproj"<Project>{98a51ba8-fc3a-415b-ac8f-8c7bd464e93e}</Project>
      1. <ReferenceOutputAssembly></ReferenceOutputAssembly>
      1. </ProjectReference>
      1. "..\cocos2d\cocos\audio\proj.win32\CocosDenshion.vcxproj"{f8edd7fa-9a51-4e80-baeb-860825d2eac6}</Project>
      1. </ProjectReference>
      1. "..\cocos2d\external\chipmunk\proj.win32\chipmunk.vcxproj">
      1. {207bc7a9-ccf1-4f2f-a04d-45f72242ae25}</Project>
      1. </ProjectReference>
      1. </ItemGroup>
      1. <ItemGroup>
      1. <ResourceCompile"game.rc""$(VCTargetsPath)\Microsoft.Cpp.targets""ExtensionTargets"</ImportGroup>
      1. </Project>

    这样不仅解决了这个问题,还能避免每次开新项目时的强制升级

    猜你在找的Cocos2d-x相关文章