当前位置:首页 » 编程软件 » 编译不足

编译不足

发布时间: 2023-07-13 00:13:37

A. visual studio 编译器的堆空间不足问题的解决(cmake版本)

我们有个自动编译游戏引擎的脚本,这个脚本时间用久了,总是会报如下的错误:

fatal error C1060: 编译器的堆空间不足

每次出现这种错误,总是要请人重启机器,重新配置,很耽误时间和精力。

所以本人就在努力寻找一个彻底的解决办法。

想直接要解决方法的朋友可以跳过接下来的两节。

简单网上搜一下,就能搜到参考文献1。

如果你的c++工程不用cmake,参考文献1的方法足以满足你的需求。

但是我们工程比较大,肯定是要用cmake的,所以我就开始尝试各种方法: 通过改工程的cmake文件的方式来让cmake生成的vcxproj工程文件中包含PreferredToolArchitecture属性。

网上找了好久,试了不少办法,还是没用。

发现最终解决方案也是个很有趣的过程,值得记录。

首先我看见PreferredToolArchitecture父节点是PropertyGroup,而PropertyGroup下面有Platform属性,PreferredToolArchitecture和Platform是兄弟属性。

我们的Platform用x64还是win32,都是在cmake命令行里指定的。

所以我就大胆猜测,PreferredToolArchitecture这个属性如果可以通过cmake设置的话,大概率也是在cmake的命令行中设置!

接着,就是小心求证的过程,先执行: cmake --help

通过阅读帮助文档,辅以简单的排除法,我觉得toolset-name这个属性很可能是我要的,于是谷歌: cmake toolset name

从而找到了文档2,在文档2中发现了host=x64这个东西,但是我还不知道怎么用!于是继续搜索:cmake host=x64

找到了文档3,然后修改我们的编译脚本,加入这个编译选项,重新cmake,果然,出现了vcxproj文件中看到了PreferredToolArchitecture x64属性!

感觉成功了90%,编译工程,打开任务管理器,观察进程名称,发现c++编译器都是64位的,遂大功告成。

问题的本质就是windows操作系统visual studio的默认cpp编译器是32位的,所以最大内存是4G,就容易导致编译器内存不足。

有问题的cmake指令如下:

使用64位的cpp编译器的解决方法如下:

注意: cmake的GUI并没有-T host的选择,当然最新版的GUI可能也会加这个。。

还有另一种方法,添加环境变量: set PreferredToolArchitecture=x64

虽然用了64位的cpp编译器,过了一段时间,还是报堆空间不足的问题。

据观察,物理内存占用率100%,所以考虑利用空闲的磁盘空间,增大机器的虚拟内存。

win10如何设置虚拟内存的大小: https://jingyan..com/article/2fb0ba4041d14c00f3ec5f4e.html

物理内存只有32G,以前的虚拟内存是6G,我利用空闲磁盘,增大虚拟内存到100G!

B. 如何解决 用于 actionscript 3.0 编译的 java 虚拟机内存不足

  • 增加 Java 虚拟机的内存限制:在启动 animate 时,使用 "-Xmx" 选项增加可用的内存量。例如,"-Xmx1024m" 表示最多可分配 1024 MB 的内存。

  • 减小弯烂丛 Actionscript 3.0 编译的文件大小:减小编译文件的大小可以减少内存需求。可以考虑删除不埋樱必要的资源,压缩图像文件,或者使用更有效的图像格式。

  • 使用 64 位 Java 虚拟机:64 位 Java 虚拟机具有更大的可用内存,因此可以使用它来避免内存不足的问题。

  • 拆分 Actionscript 3.0 编译的文件:将大型的 Actionscript 3.0 编译的文件拆分成较小的文件历拆,可以减少单个文件所需的内存。

  • 希望以上步骤可以帮助你解决 animate 用于 Actionscript 3.0 编译时 Java 虚拟机内存不足的问题。

C. 编译提示内存不足怎么回事

这个的意思是:
标题:微软VC++运行库
内容:运行中出错(错误)!
路径:C:\Program Files\易语言v.5.11\e.exe
程序异常终止
--------------------
应该是易语言本身的问题,下载官方的易语言或者选择没有损坏的破解版。
如果重装了易语言与还是不行,那么就重装VC++运行库

D. 编译C程序时提示内存不够怎么办

可能是如下情况:你的程序严重错误,不断的malloc或new内存却没有free或delete.
或者是你内存小到可怜。

所以,建议你换用版本较好的编译器,如Turboc for windows或VC。
同时重启以此计算机,内存是RAM,重启自然会恢复。

E. 易语言.请问一下编译内存不足怎么解决

再好不要把ide放在C盘,内存不足的话,就加装内存条吧,或者干脆换电脑。

F. eclipse编译项目内存不足,电脑有内存但xmx又设不了更大

你先设置-Xms512m,-Xms1024m,如果你可用内存不足1024,再设置小点;你也可以在运行jdk上设置

热点内容
vb淘宝源码 发布:2025-05-06 21:08:23 浏览:654
很多人的普通支付密码是多少 发布:2025-05-06 21:08:22 浏览:658
统治战场免费脚本 发布:2025-05-06 21:07:24 浏览:777
庆余年哪里可以离线缓存 发布:2025-05-06 21:06:49 浏览:369
传奇自动穿装备脚本 发布:2025-05-06 20:54:06 浏览:265
网易没有服务器什么梗 发布:2025-05-06 20:45:52 浏览:50
删除qq群上传的照片怎么删除不了怎么办 发布:2025-05-06 20:44:14 浏览:590
python用什么开发工具 发布:2025-05-06 20:33:06 浏览:87
宽带上传提速 发布:2025-05-06 20:24:58 浏览:27
win搭建域名服务器配置 发布:2025-05-06 20:16:49 浏览:784