使用libpcl_surface调试boost::math::lanczos中的seg错误
debug seg fault in boost::math::lanczos with libpcl_surface
只有在使用调试标志编译的代码上使用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
操作系统:解锁14.04
我有最新的pcl库(1.7Sprikelhof)和boost库(1.54)
注意,在gdb外部运行时没有segfault。
我在使用-std=c++11
编译时遇到了类似的问题,但仅在Debug
模式下:set(CMAKE_BUILD_TYPE Debug)
。相反,在Release
或RelWithDebInfo
模式下,一切都按预期工作。
我使用-O1
选项解决了优化已编译代码(在Debug
模式下)的问题。即CCD_ 8。
我不知道为什么它有效,但它对我有效。
相关文章:
- cmath 是否借用了 math.h 的实现
- exp(-1/0.) == 0 是否确定即使使用 -ffast-math 优化也能成立?
- Math.log是以一种避免log(1 x)的精度的方式实现的
- 使用 boost::math::ibeta 的错误
- 是否有任何指数函数在 math.h 标头中返回IEEE_FLOAT64?
- 将 math.h exp 调用替换为查找表
- 在DirectX Math中与XmmatrixDecompose()相反
- 使用 gcc 的 -fno-math-errno 可能有什么副作用?
- 为什么仅 -fno-signed-0 就可以实现优化,而似乎也需要 -ffinite-math-only (gcc)
- 为什么没有标准的C++数学库<math>而不是C包装器<cmath>?
- 检测`boost :: Math ::工具:: brent_find_minima()的不良输入
- 使用boost :: Math的Gauss-Kronrod正交正交进行复杂函数的集成
- 不能使用包含 math.h 和 g++ 7 (Raspberry PI) 的 C 库
- boost::math::sinc_pi是否不必要地复杂
- C++ 错误:不存在从 "math::Vec3<float>" 到 "float" 的合适转换函数
- <math.h>是C还是C++?
- Spoj :ENIGMATH - PLAY WITH MATH
- 未解析的外部符号"private: static int Math::result"
- 对"Math::addNumbers(int, int)"的未定义引用
- 使用libpcl_surface调试boost::math::lanczos中的seg错误