C++ 错误解决 —— internal compiler error

问题:

g++ 编译时,报错:

g++: internal compiler error: Killed (program cc1plus)

出错原因:

出错的原因是(虚拟机)运行内存不足,而大量template的扩展需要足够的内存。

解决:

方法1:

若是在虚拟机上,关掉虚拟机,可直接调节虚拟机内存大小,然后重新启动即可。

方法2:

可以通过临时使用交换分区来解决:

sudo dd if=/dev/zero of=/swapfile bs=64M count=16   
#count的大小就是增加的swap空间的大小,64M是块大小,所以空间大小是bs*count=1024MB
sudo mkswap /swapfile                               
#把刚才空间格式化成swap格式
sudo swapon /swapfile                               
#使用刚才创建的swap空间

在编译完成后,最好可以关闭(释放)交换空间

sudo swapoff /swapfile
sudo rm /swapfile

之后继续执行你的相关操作就可以了。。。

注意:如果创建了临时空间之后仍提示“g++: internal compiler error: Killed (program cc1plus)”,可能是因为分配的空间不够大,可以继续分配更大的空间。

参考博客:g++: internal compiler error: Killed (program cc1plus) 解决办法

                  C++11: g++-4.7 internal compiler error 解决方法


  • 13
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: C++:内部编译器错误 这个错误通常是由于编译器本身的错误引起的,可能是由于编译器的版本不兼容或编译器的配置问题。解决这个问题的最好方法是升级编译器或使用其他编译器。同时,您也可以尝试重新编译代码或检查代码中是否存在语法错误或其他问题。 ### 回答2: "C: internal compiler error"通常会在编译C语言代码时遇到,它是编译器的一个内部错误。意思是编译器在处理代码时遇到了问题,导致编译器崩溃了。 这个错误可能是由于一些非法的代码或者过度复杂的语句导致的。在某些情况下,这个错误可能也与编译器本身的故障有关。 为了解决这个问题,首先应该检查代码中是否有任何语法错误或编译错误。可以通过尝试在不同的编译器中编译代码来确认这个错误是否是由于编译器本身的故障引起的。 如果确认问题是由于编译器引起的,那么可以考虑更新编译器或者切换到其他的编译器。同时,也可以通过检查编译器的配置或者环境变量等设置来诊断和排除故障。 总之,C语言的“internal compiler error错误通常是由于代码的语法问题或编译器本身的故障导致的。为了解决问题,应该检查代码和编译器设置,确保它们均正确无误。 ### 回答3: "C: Internal compiler error"是C代码编译器的一种错误提示,它通常由编译器软件中的一个内部错误导致。这个错误指示编译器发现了一个由于代码编写错误或编译器自身的错误而导致无法继续进行编译的问题。 在遇到"C: Internal compiler error"这个错误时,我们应该首先检查代码是否有语法错误、符号错误、类型不匹配等问题。如果代码本身没有问题,可能是编译器自身的问题。此时,我们需要重新安装编译器或更新编译器软件,以确保我们使用的是最新版本的编译器。 在处理这种错误时,我们需要注意以下几点: 1.备份代码:在进行任何更改之前,我们应该先备份代码,以防止在处理错误时丢失宝贵的代码。 2.检查代码:我们需要仔细检查程序代码,以确定它是否存在语法错误、符号错误、类型不匹配等问题。 3.更新编译器:如果代码没有问题,我们需要重新安装,或更新编译器软件,以确保我们使用的是最新版本的编译器。 4.报告问题:如果我们无法解决问题,我们可以向编译器供应商报告问题,以便他们修复该错误。 总之,C: Internal compiler error是一种程序错误,可能由代码编写错误或编译器自身的问题导致。在处理这个问题时,我们应该仔细检查程序代码,更新编译器软件,并报告问题以便得到修复。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值