编译遇到 compile segmentation fault

本文介绍了在编译过程中遇到的Segmentation Fault错误,特别是涉及到Eigen3和Boost库时。问题源于编译器内部错误,可以通过检查和调整堆栈大小来解决。使用`ulimit -s`命令查看当前堆栈大小,并通过`ulimit -s `设置新的堆栈大小,如`ulimit -s 10240`或设置为无限。参考资源提供了更多关于`ulimit`设置和类似问题的解决办法。
摘要由CSDN通过智能技术生成

编译遇到 compile segmentation fault

尤其是eigen3,boost的头文件,例如

In file included from /usr/include/eigen3/Eigen/Core:472:0,

from /usr/include/eigen3/Eigen/Geometry:11,

from /home/ruanjy/Workspace/check_ws/src/slamesh/src/factor/cov_func_point_to_point.h:12,

from /home/ruanjy/Workspace/check_ws/src/slamesh/src/factor/get_icp_fun.cpp:1:

/home/ruanjy/Workspace/check_ws/src/slamesh/src/factor/get_icp_fun.cpp:604:104: required from here

/usr/include/eigen3/Eigen/src/Core/ProductEvaluators.h:553:3: internal compiler error: Segmentation fault

}

方法:

查看stack大小

ulimit -s

增加stack大小

stack size (kbytes, -s) 8192

ulimit -s 10240

或者

ulimit -s unlimited

 参考:

ulimit - Set process limits

ROS Hector Mapping: c++: internal compiler error: Segmentation fault (program cc1plus)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值