c++: internal compiler error: Segmentation fault (program cc1plus) 解决

这篇具有很好参考价值的文章主要介绍了c++: internal compiler error: Segmentation fault (program cc1plus) 解决。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        在ubuntu中编译很多库,尤其是很大的一些中间件,常常会c++: internal compiler error: Segmentation fault (program cc1plus)这个错误,看到这个错误,很多人一搜索,大部分都是告诉你内存不足,很多人应该增加了虚拟内存后都没有解决
    由于我也踩到了这个坑,所以这里分享容易被大家忽略的一种可能解决办法。
    本人是在编译Cartographer时,TX1硬件核心,官方ubuntu 18.04系统,遇到这个问题,增加虚拟内存,甚至观察编译失败前的内存情况,基本都没有使用到虚拟内存也会失败,所以我人为并不是内存问题,应该是有其它没有注意到限制。对Cartographer有兴趣可以查看https://blog.csdn.net/cau_weiyuhu/article/details/128166362。
    通过不断搜索的努力,终于定位到了一个系统设置限制,编译的时候编译器需要打开很多关联源文件,以及很多头文件,这个时候其实缓冲中有很多这样的文件句柄,这个数量在系统内竟然有个限制数量,各个系统可能根据硬件性能不同有点限制。
    **系统对文件句柄打开数量的限制。**
 

#查看系统本身设置限制参数
 ulimit -a

cc1plus: 编译器内部错误: 段错误,Jetson,Ubuntu,Jetson TX1,linux,嵌入式硬件,ubuntu

 

        可以看到,我系统原始的打开文件个数(open files )为1024,静态缓冲(stack size )1024,其中有些是unlimited,为无限制。总之,这个命令会让你知道系统的一些资源限制。

问题是,如何改大:

sudo gedit /etc/security/limits.conf 

cc1plus: 编译器内部错误: 段错误,Jetson,Ubuntu,Jetson TX1,linux,嵌入式硬件,ubuntu

增加
nvidia hard nofile 65535
nvidia soft nofile 65535
root hard nofile 65535
root soft nofile 65535
ubuntu hard nofile 65535
ubuntu soft nofile 65535
修改
ubuntu hard stack 2024
ubuntu soft stack 2024
nvidia hard stack 2024
nvidia soft stack 2024

 cc1plus: 编译器内部错误: 段错误,Jetson,Ubuntu,Jetson TX1,linux,嵌入式硬件,ubuntu

保存退出,后需要重启系统生效

#重启
sudo reboot

#重启后查看配置
ulimit -a

nvidia@nvidia-desktop:~$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 13930
max locked memory       (kbytes, -l) 65536
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 2024
cpu time               (seconds, -t) unlimited
max user processes              (-u) 13930
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

 重启后,你再编译刚才的程序,很大概率就不会再出现这个错误,希望对你解决问题有一定的帮助。文章来源地址https://www.toymoban.com/news/detail-532960.html

到了这里,关于c++: internal compiler error: Segmentation fault (program cc1plus) 解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言 SIGSEGV (Segmentation fault)

    出错代码 错误: SIGSEGV (Segmentation fault) 经过调试,发现 那一行代码返回值结果和预期是相同的,但是就是在那一行出现 Segmentation fault,因此可能是那一行代码里面的指针有问题,经查找,是 HString 的char*指针未初始化,使用了未初始化的指针 解决方法: 调用初始化方法对指

    2024年02月14日
    浏览(22)
  • Linux 应用 Segmentation fault 分析手段

    本文主要介绍,在Linux 下应用程序发生Segmentation fault 错误时,如何使用gdb 通过core dump文件查找错误具体发生的地方。 在板子上执行ulimit -c 或者 ulimit -a 命令查看core 文件大小的配置情况,如下图所示 此时 “ core file size ”大小为0,说明系统没有打开core dump,解决方法: 执行

    2024年02月10日
    浏览(26)
  • 关于 vue3运行报错Internal server error: [@vue/compiler-sfc] <script setup> cannot contain ES 的处理方法

    大致的意思就是 script setup  不能使用ES模块导出 其实问题就出在,给官方给出的方法混用了 一种是: script  标签里面配置  setup 另一种是: export default  类里配置  setup()  方法 两者用一种就行了 第一种  第二种

    2024年02月07日
    浏览(35)
  • 【Linux】调试常见的应用程序奔溃“Segmentation fault (core dumped)”

    Linux程序开发者,日常遇到程序奔溃时,应该如何调试,如何寻找原因和解决呢?本文就介绍了遇到Segmentation fault (core dumped)问题时最常规的定位方法。 当你在命令行执行一个程序时,遇到Segmentation fault (core dumped)后,第一时间查看当前目录下是否产生了core-xxxxx文件。 如果没

    2024年02月10日
    浏览(33)
  • 问题记录 | 执行python命令报错 713011 segmentation fault (core dumped) python

    最近在看DALLE2模型,新建conda虚拟环境之后使用命令 pip install dalle2_pytorch 安装,然后在MobaXterm中执行python命令,报错 但是在vscode中同样的命令能够顺利执行

    2024年02月13日
    浏览(30)
  • 【Q&A】Python代码调试之解决Segmentation fault (core dumped)问题

    Python3执行某一个程序时,报Segmentation fault (core dumped)错,且没有其他任何提示,无法查问题。 Segmentation fault (core dumped)多为内存不当操作造成。空指针、野指针的读写操作,数组越界访问,破坏常量等。对每个指针声明后进行初始化为NULL是避免这个问题的好办法。排除此问题

    2023年04月21日
    浏览(26)
  • 记录关于智能家居的路程的一个bug___Segmentation fault(段错误)

    其实发生段错误的情况有很多: 其实在项目的开发中最有可能的错误就是①和②,考虑到本项目数组用的比较少,所以主要是考虑错误①指针的误用。 有时候错误就是那么离谱,声音也算是一种设备????? 有时候又没有段错误 怀疑是多线程的问题,把线程一个一个注释

    2024年04月15日
    浏览(27)
  • 64位AT&T汇编语言as汇编ld链接,执行报错Segmentation fault

    absCallAndPrintAbsAsLd.s 里边的内容如下: as -g absCallAndPrintAbsAsLd.s -o absCallAndPrintAbsAsLd.o 进行汇编。 ld -g absCallAndPrintAbsAsLd.o -o absCallAndPrintAbsAsLd -lc -I /usr/lib64/ld-linux-x86-64.so.2 进行链接。 ./absCallAndPrintAbsAsLd 执行报错 Segmentation fault 。 我把 rsp 中的地址加上8之后,就不报错了,因为这

    2024年01月24日
    浏览(30)
  • swc-loader Segmentation fault “$NODE_EXE“ “$NPM_CLI_JS“ “$@“

    webpack + swc swc还不是很稳定。 在swcrc 中有配置plugins 时,swc 转换 /node_modules/ 会报错。 @swc/cor@1.3.62 swc-loader@0.2.3 swc-plugin-vue-jsx@0.2.5 配两套rule,一套处理项目代码,一套处理node_modules webpack.config.js swcrc mode: entry 稳定一点。用usage会出问题。 果然是experimental.plugin, 实验性featur

    2024年02月11日
    浏览(36)
  • Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件[已解决] pytorch c++混编报错 Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件。

    win11 pytorch 进行C++编译时出现错误 关键错误 1.:UserWarning: Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件。 定位位置:D:Anaconda_appenvspython37libsite-packagestorchutilscpp_extension.py:305行 看看这个地方怎么有错误: 不是在linux平台,而是win平台,于是找到cl.exe的

    2024年02月10日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包