vs2022 编译遇见编译器堆空间不足,解决办法(针对CMAKE工程)

news2024/12/23 14:38:10

1、原因:

就是编译工程文件太大,导致堆栈溢出。原始vs默认的编译器是32位,我们设置为64位就可解决部分问题。

具体可能造成的原因可以参考:

错误 C1060 |微软学习 (microsoft.com)

2、解决:

1、需要提前安装cmake,不然在命令没法通过指令运行

2、在命令行,跳到对应的工程文件,如图

3、输入指令:

cmake -G "Visual Studio 17 2022" -A x64 -T host=x64

 vs版本对应

Visual Studio 17 2022        = Generates Visual Studio 2022 project files.
                                 Use -A option to specify architecture.
  Visual Studio 16 2019        = Generates Visual Studio 2019 project files.
                                 Use -A option to specify architecture.
  Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 10 2010 [arch] = Deprecated.  Generates Visual Studio 2010
                                 project files.  Optional [arch] can be
                                 "Win64" or "IA64".
  Visual Studio 9 2008 [arch]  = Generates Visual Studio 2008 project files.
                                 Optional [arch] can be "Win64" or "IA64".

 

4、然后cmake文件会变成如下文件:

 5、修改最外层的ZERO_CHECK.vcxproj

      5.1 找到PropertyGroup Label="Globals"

      5.2 在最后添加<PreferredToolArchitecture>x64</PreferredToolArchitecture>

 

 6、重新生成,编译即可。

      先点击全部清理,再点击全部生成。

 7、补充:

如果还是报错,可以参考如下报错原因:

如果编译器还发出错误C1076和C3859,请使用 /Zm编译器选项降低内存分配限制。如果降低剩余内存分配,则应用程序可以使用更多堆空间。

如果已经设置了 /Zm选项,请尝试将其删除。堆空间可能已耗尽,因为选项中指定的内存分配限制太高。如果删除 /Zm选项,编译器将使用默认限制。

如果在 64 位平台上进行编译,请使用 64 位编译器工具集。有关信息,请参见如何:在命令行上启用 64 位可视C++工具集。

在 32 位 Windows 上,尝试使用 /3GBboot.ini 开关。

增加 Windows 交换文件的大小。

关闭其他正在运行的程序。

消除不必要的包含文件。

消除不必要的全局变量,例如,通过动态分配内存而不是声明大型数组。

消除未使用的声明。

将当前文件拆分为较小的文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25915.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

iOS关于搜索不规则瀑布流布局的实现小结

最近在项目开发中遇到了不规则搜索布局的问题。 之前常用的解决方案是用一个tableview用一个循环动态的加载&#xff0c;唯一的缺点是需要动态的移除&#xff0c;其实也已经足够。ios搜索历史记录不规则布局-IOS代码类资源-CSDN下载&#xff0c;需要的话可以下载使用。请教了一…

双向链表的实现

这里以结构体的方式来实现链表&#xff0c;也可以使用类。结构体在没有修饰符的情况下&#xff0c;默认是共有访问。如有不对&#xff0c;希望能指出。 目录 一、链表和结点结构体的声明 (ListNode.h) 二、链表各个功能的实现 1、增 (1) 构造函数&#xff08;创建链表头结点…

简历上写着“精通 MySQL”,阿里面试官非要跟我死磕,最后还是给我发了 offer

事情是这样的 前段时间因为想要跳槽就去面试了下阿里&#xff0c;大家也都清楚&#xff0c;精通这个词在简历上属于很难把握住的一个词&#xff0c;如果你在你的简历上面写着你精通 XX 技术&#xff0c;那面试官就会默认你是真的很会&#xff0c;刨根问底问到你崩溃。 我之前…

【踩坑】工作中真实踩坑,一个or让sql变慢7倍

工作中真实踩坑&#xff0c;一个or让sql变慢1000倍1.情况说明2.解释计划3.or改成union4.总结1.情况说明 测试环境&#xff0c;有两张表&#xff0c;分别是讲师表t_train_lecturer(后面简称B表&#xff09;,和讲师的授课时长表t_train_activity&#xff08;后面简称A表&#xf…

opencv 图像平滑

高通滤波可以找到图像的边缘。低通滤波可以去除噪音&#xff0c;模糊图像。 自定义滤波器 cv2.filter2D() import cv2 import numpy as np from matplotlib import pyplot as pltimg cv2.imread(img1.png) imgcv2.cvtColor(img,cv2.COLOR_BGR2RGB) kernel np.ones((5, 5), n…

2022年11月10篇论文推荐

随着最大的人工智能研究会议(NeurIPS 2022)即将到来&#xff0c;我们进入了2022年的最后阶段。让我们回顾一下人工智能世界最近发生了什么。 在介绍推荐论文之前&#xff0c;先说一个很有意思的项目&#xff1a; img-to-music:想象图像听起来是什么样的模型! https://hugging…

人工智能和自动驾驶业务将是百度未来的最强增长动力

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 虽然百度(BIDU)长期以来一直缺乏增长动力&#xff0c;但猛兽财经认为现在可能是投资百度股票的时候了。因为我们认为百度在未来有几个可以实现强劲增长的动力。首先&#xff0c;百度可以利用其在中国自动驾驶市场的领先地位…

如何验证ARP缓存表最多能缓存多少条动态条目

ARP协议原理、ARP缓存表目的,这些在我的文章中已经反复提及过多次了。ARP缓存表里有静态和动态条目两种,静态的是写死的,没有老化时间,不会随着时间的流逝而自动删除。动态条目是缓存的,有老化时间timeout,如果长时间没有刷新,老化时间到了就会自动删除。老化时间是一个…

智能服务机器人产品及解决方案

产品概述 随着人工智能&#xff08;AI&#xff09;领域技术的不断发展和演进&#xff0c;面向人工智能的领域应用也越来越被更多的企业关注。信迈作为中国领先的创新型软件及信息技术服务商&#xff0c;一直致力于人工智能领域技术的探索和实践。 信迈凭借自身雄厚的技术能力…

Cookie注入和X-Forwarded-For注入

&#x1f4aa;&#x1f4aa;Cookie注入和X-Forwarded-For注入一 .Cookie注入1.创建漏洞环境2.漏洞攻击2.1判断是否有注入2.2信息收集2.3注入获取数据库名2.4注入获取表名2.5注入获取列名2.6注入获取信息3.sql靶场实战二. X-Forwarded-For注入1.创建漏洞环境2.漏洞攻击2.1判断是…

浅析Betaflight中的OSD叠加程序【MAX7456AT7456】

前言&#xff1a;想要对OSD下手已经不是头一次了&#xff0c;前几次都浅尝辄止。一个是能力不够&#xff0c;BetaFlight的代码体系太庞大了&#xff0c;看不懂也摘不出来。 这次要做一款带osd功能的接收机&#xff08;用在遥控车上&#xff09;&#xff0c;所以又来打飞控程序…

[附源码]java毕业设计校园快递管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

1万属性,100亿数据,每秒10万吞吐,架构如何设计?

有一类业务场景&#xff0c;没有固定的schema存储&#xff0c;却有着海量的数据行数&#xff0c;架构上如何来实现这类业务的存储与检索呢&#xff1f;58最核心的数据“帖子”的架构实现技术细节&#xff0c;今天和大家聊一聊。一、背景描述及业务介绍什么是58最核心的数据&…

深度学习入门(四十四)计算机视觉——多尺度目标检测

深度学习入门&#xff08;四十四&#xff09;计算机视觉——多尺度目标检测前言计算机视觉——多尺度目标检测教材1 多尺度锚框2 多尺度检测3 小结前言 核心内容来自博客链接1博客连接2希望大家多多支持作者 本文记录用&#xff0c;防止遗忘 计算机视觉——多尺度目标检测 教…

【Hack The Box】linux练习-- Postman

HTB 学习笔记 【Hack The Box】linux练习-- Postman &#x1f525;系列专栏&#xff1a;Hack The Box &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4c6;首发时间&#xff1a;&#x1f334;2022年11月17日&#x1f334; &#x1f…

大学生旅游风景主题dreamweaver网页设计大作业-陕西渭南HTML+CSS制作网页

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法&#xff0c;如盒子的嵌套、浮动、margin、border、background等属性的使用&#xff0c;外部大盒子设定居中&#xff0c;内部左中右布局&#xff0c;下方横向浮动排列&#xff0c;大学学习的前端知识点和布局方式都有…

从不学无术到架构师Leader:这份java面试知识宝典,一举斩获京东T8

前言 面试了大大小小各种公司&#xff0c;有BAT的&#xff0c;上市的&#xff0c;AB各种轮的&#xff0c;初创的……今天大概列举了下&#xff0c;至少有30家公司。 在这里我总结了求职面试需要注意的各种问题&#xff0c;希望可以用我收集的《Java面试核心知识笔记》及面试经…

element UI 组件封装--搜索表单(含插槽和内嵌组件)

组件封装–搜索表单 searchForm.vue 可根据需要&#xff0c;参考姓名和工作自行增加更多常用的默认搜索项 <template><div style"padding: 30px; width: 300px"><el-formref"searchFormRef":model"searchData":label-width"…

伽马校正笔记(Gamma Correction)

在数字图像系统中&#xff0c;伽马&#xff08;Gamma&#xff09;是一个重要的但很少被正确理解的特性。它定义了一个像素的数值和对应的实际亮度之间的关系。 人眼感知的亮度和相机“看到”的亮度区别 对于数码相机来说&#xff0c;当检测的光子数增加一倍时&#xff0c;sens…

Win11蓝屏代码IRQL NOT LESS OR EQUAL的处理方法

蓝屏错误IRQL NOT LESS OR EQUAL是用户常见的系统故障了&#xff0c;升级到Win11新系统也遇到了同样的问题&#xff0c;那么Win11蓝屏问题IRQL NOT LESS OR EQUAL要如何解决&#xff1f;下面就来看看小编整理的解决办法。 什么是 IRQL_NOT_LESS_OR_EQUAL 错误&#xff1f; IRQL…