Ger*_*imo 6 c++ debugging boost segmentation-fault point-cloud-library
只有在我使用调试标志编译的代码上使用gdb进行调试时,才会出现以下错误
Program received signal SIGSEGV, Segmentation fault.
0x00007fffc79a7ff0 in boost::math::lanczos::lanczos_initializer<boost::math::lanczos::lanczos17m64, long double>::init::init() ()
from /usr/lib/libpcl_surface.so.1.7
Run Code Online (Sandbox Code Playgroud)
操作系统:unbutu 14.04
我有最新的pcl库(1.7 Sprikelhof)和boost库(1.54)
注意,在gdb外部运行时没有段错误.
小智 8
编译使用时我遇到了类似的问题,-std=c++11但仅限于Debug模式:set(CMAKE_BUILD_TYPE Debug).在Release或RelWithDebInfo模式中,一切都按预期工作.
我Debug用-O1选项解决了优化编译代码(在模式下)的问题.即set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O1").
我不知道为什么它有效,但它对我有用.