最近遇到一个十分奇怪的问题,编译器编译工程项目时居然报 “编译器的堆空间不足”
使用的是VS2015,后面打了update3补丁也无效
微软说明文档:https://docs.microsoft.com/zh-cn/cpp/error-messages/compiler-errors-1/fatal-error-c1060?view=vs-2019
(微软文档这个说明太过于鸡肋,尝试了几条,失败---- 放弃微软给的方法)
原因: 32位cl.exe内存只有3.5G,当你编译的工程超过这个限制就会报空间不足错误,将工程vcxproj文件配置改为64即可
实测通过解决方法:
1. 找到工程项目的xxx.vcxproj文件,用编辑器打开该文件
2. 搜索“Globals”项,会找到 <PropertyGroup Label="Globals">
3. 加上<PreferredToolArchitecture>x64</PreferredToolArchitecture> 配置即可
例:
原项目: <PropertyGroup Label="Globals">
<ProjectGuid>{9B7CA375-7006-4227-837E-445F546DECCB}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>ui</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
</PropertyGroup>
修改为: <PropertyGroup Label="Globals">
<ProjectGuid>{9B7CA375-7006-4227-837E-445F546DECCB}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>ui</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>