BAD-SLAM/SLAM-RGBD调试报错:double free or corruption (out): 0x0000000000be3fe0...

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44401286/article/details/102561953

1、报错现象

*** Error in `./visualOdometry': double free or corruption (out): 0x0000000000be3fe0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7fbf1e6407e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7fbf1e64937a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7fbf1e64d53c]
/usr/local/lib/libg2o_types_sba.so(_ZN3g2o26EdgeProjectP2MC_IntrinsicsD0Ev+0x2d)[0x7fbf1f25cb0d]
/usr/local/lib/libg2o_core.so(_ZN3g2o7Factory12registerTypeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_32AbstractHyperGraphElementCreatorE+0x497)[0x7fbf22449fd7]
/usr/local/lib/libg2o_types_sba.so(+0x20a3d)[0x7fbf1f254a3d]
/lib64/ld-linux-x86-64.so.2(+0x106ca)[0x7fbf237986ca]
/lib64/ld-linux-x86-64.so.2(+0x107db)[0x7fbf237987db]
/lib64/ld-linux-x86-64.so.2(+0xc6a)[0x7fbf23788c6a]
======= Memory map: ========
00400000-0043e000 r-xp 00000000 08:13 13633597                           /home/bruce/slam/slam_RGBD2/bin/visualOdometry
0063d000-0063e000 r--p 0003d000 08:13 13633597                           /home/bruce/slam/slam_RGBD2/bin/visualOdometry
0063e000-0063f000 rw-p 0003e000 08:13 13633597                           /home/bruce/slam/slam_RGBD2/bin/visualOdometry
0063f000-00640000 rw-p 00000000 00:00 0 
00b81000-00c05000 rw-p 00000000 00:00 0                                  [heap]
7fbf00000000-7fbf00021000 rw-p 00000000 00:00 0 
7fbf00021000-7fbf04000000 ---p 00000000 00:00 0 
7fbf063d4000-7fbf063da000 r-xp 00000000 08:13 8920428                    /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3
7fbf063da000-7fbf065da000 ---p 00006000 08:13 8920428                    /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3
7fbf065da000-7fbf065db000 r--p 00006000 08:13 8920428                    /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3
7fbf065db000-7fbf065dc000 rw-p 00007000 08:13 8920428                    /usr/lib/x86_64-linux-gnu/libdatrie.so.1.3.3
7fbf065dc000-7fbf065ff000 r-xp 00000000 08:13 8920734                    /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1
7fbf065ff000-7fbf067fe000 ---p 00023000 08:13 8920734                    /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1
7fbf067fe000-7fbf06800000 r--p 00022000 08:13 8920734                    /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1
7fbf06800000-7fbf06801000 rw-p 00024000 08:13 8920734                    /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1
7fbf06801000-7fbf06805000 r-xp 00000000 08:13 8655262                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7fbf06805000-7fbf06a04000 ---p 00004000 08:13 8655262                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7fbf06a04000-7fbf06a05000 r--p 00003000 08:13 8655262                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7fbf06a05000-7fbf06a06000 rw-p 00004000 08:13 8655262                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7fbf06a06000-7fbf06a0b000 r-xp 00000000 08:13 8920183                    /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fbf06a0b000-7fbf06c0a000 ---p 00005000 08:13 8920183                    /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fbf06c0a000-7fbf06c0b000 r--p 00004000 08:13 8920183                    /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fbf06c0b000-7fbf06c0c000 rw-p 00005000 08:13 8920183                    /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fbf06c0c000-7fbf06c0e000 r-xp 00000000 08:13 8920172                    /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fbf06c0e000-7fbf06e0e000 ---p 00002000 08:13 8920172                    /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fbf06e0e000-7fbf06e0f000 r--p 00002000 08:13 8920172                    /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fbf06e0f000-7fbf06e10000 rw-p 00003000 08:13 8920172                    /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fbf06e10000-7fbf06e8b000 r-xp 00000000 08:13 8921104                    /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.25.0
7fbf06e8b000-7fbf0708a000 ---p 0007b000 08:13 8921104                    /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.25.0
7fbf0708a000-7fbf0708c000 r--p 0007a000 08:13 8921104                    /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.25.0
7fbf0708c000-7fbf07090000 rw-p 0007c000 08:13 8921104                    /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.25.0
7fbf07090000-7fbf07098000 r-xp 00000000 08:13 8921355                    /usr/lib/x86_64-linux-gnu/libthai.so.0.2.4
7fbf07098000-7fbf07297000 ---p 00008000 08:13 8921355                    /usr/lib/x86_64-linux-gnu/libthai.so.0.2.4
7fbf07297000-7fbf07298000 r--p 00007000 08:13 8921355                    /usr/lib/x86_64-linux-gnu/libthai.so.0.2.4
7fbf07298000-7fbf07299000 rw-p 00008000 08:13 8921355                    /usr/lib/x86_64-linux-gnu/libthai.so.0.2.4
7fbf07299000-7fbf072f5000 r-xp 00000000 08:13 8920822                    /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10000.1
7fbf072f5000-7fbf074f5000 ---p 0005c000 08:13 8920822                    /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10000.1
7fbf074f5000-7fbf074f6000 r--p 0005c000 08:13 8920822                    /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10000.1
7fbf074f6000-7fbf074f7000 rw-p 0005d000 08:13 8920822                    /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10000.1
7fbf074f7000-7fbf0750e000 r-xp 00000000 08:13 8652253                    /lib/x86_64-linux-gnu/libresolv-2.23.so
7fbf0750e000-7fbf0770e000 ---p 00017000 08:13 8652253                    /lib/x86_64-linux-gnu/libresolv-2.23.so
7fbf0770e000-7fbf0770f000 r--p 00017000 08:13 8652253                    /lib/x86_64-linux-gnu/libresolv-2.23.so
7fbf0770f000-7fbf07710000 rw-p 00018000 08:13 8652253                    /lib/x86_64-linux-gnu/libresolv-2.23.so
7fbf07710000-7fbf07712000 rw-p 00000000 00:00 0 
7fbf07712000-7fbf07731000 r-xp 00000000 08:13 8655451                    /lib/x86_64-linux-gnu/libselinux.so.1
7fbf07731000-7fbf07930000 ---p 0001f000 08:13 8655451                    /lib/x86_64-linux-gnu/libselinux.so.1
7fbf07930000-7fbf07931000 r--p 0001e000 08:13 8655451                    /lib/x86_64-linux-gnu/libselinux.so.1
7fbf07931000-7fbf07932000 rw-p 0001f000 08:13 8655451                    /lib/x86_64-linux-gnu/libselinux.so.1
7fbf07932000-7fbf07934000 rw-p 00000000 00:00 0 
7fbf07934000-7fbf0793c000 r-xp 00000000 08:13 8921569                    /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7fbf0793c000-7fbf07b3c000 ---p 00008000 08:13 8921569                    /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7fbf07b3c000-7fbf07b3d000 r--p 00008000 08:13 8921569                    /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7fbf07b3d000-7fbf07b3e000 rw-p 00009000 08:13 8921569                    /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7fbf07b3e000-7fbf07b40000 r-xp 00000000 08:13 8921573                    /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7fbf07b40000-7fbf07d40000 ---p 00002000 08:13 8921573                    /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7fbf07d40000-7fbf07d41000 r--p 00002000 08:13 8921573                    /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7fbf07d41000-7fbf07d42000 rw-p 00003000 08:13 8921573                    /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7fbf07d42000-7fbf07de1000 r-xp 00000000 08:13 8921154                    /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.33.6
7fbf07de1000-7fbf07fe1000 ---p 0009f000 08:13 8921154                    /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.33.6
7fbf07fe1000-7fbf07fe9000 r--p 0009f000 08:13 8921154                    /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.33.6
7fbf07fe9000-7fbf07fea000 rw-p 000a7000 08:13 8921154                    /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.33.6
7fbf07fea000-7fbf0808e000 r-xp 00000000 08:13 8923899                    /usr/lib/x86_64-linux-gnu/libfreetype.so.6.12.1
7fbf0808e000-7fbf0828d000 ---p 000a4000 08:13 8923899                    /usr/lib/x86_64-linux-gnu/libfreetype.so.6.12.1
7fbf0828d000-7fbf08293000 r--p 000a3000 08:13 8923899                    /usr/lib/x86_64-linux-gnu/libfreetype.so.6.12.1
7fbf08293000-7fbf08294000 rw-p 000a9000 08:13 8923899                    /usr/lib/x86_64-linux-gnu/libfreetype.so.6.12.1
7fbf08294000-7fbf082c3000 r-xp 00000000 08:13 9053604                    /usr/local/lib/libvtkImagingFourier-8.2.so.1
7fbf082c3000-7fbf084c2000 ---p 0002f000 08:13 9053604                    /usr/local/lib/libvtkImagingFourier-8.2.so.1
7fbf084c2000-7fbf084c5000 r--p 0002e000 08:13 9053604                    /usr/local/lib/libvtkImagingFourier-8.2.so.1
7fbf084c5000-7fbf084c6000 rw-p 00031000 08:13 9053604                    /usr/local/lib/libvtkImagingFourier-8.2.so.1
7fbf084c6000-7fbf084dc000 r-xp 00000000 08:13 8920035                    /usr/lib/x86_64-linux-gnu/libICE.so.6.3.0
7fbf084dc000-7fbf086db000 ---p 00016000 08:13 8920035                    /usr/lib/x86_64-linux-gnu/libICE.so.6.3.0
7fbf086db000-7fbf086dc000 r--p 00015000 08:13 8920035                    /usr/lib/x86_64-linux-gnu/libICE.so.6.3.0
7fbf086dc000-7fbf086dd000 rw-p 00016000 08:13 8920035                    /usr/lib/x86_64-linux-gnu/libICE.so.6.3.0
7fbf086dd000-7fbf086e0000 rw-p 00000000 00:00 0 
7fbf086e0000-7fbf086e7000 r-xp 00000000 08:13 8920158                    /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
7fbf086e7000-7fbf088e6000 ---p 00007000 08:13 8920158                    /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
7fbf088e6000-7fbf088e7000 r--p 00006000 08:13 8920158                    /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
7fbf088e7000-7fbf088e8000 rw-p 00007000 08:13 8920158                    /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
7fbf088e8000-7fbf088f8000 r-xp 00000000 08:13 8915883                    /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7fbf088f8000-7fbf08af8000 ---p 00010000 08:13 8915883                    /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7fbf08af8000-7fbf08af9000 r--p 00010000 08:13 8915883                    /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7fbf08af9000-7fbf08afa000 rw-p 00011000 08:13 8915883                    /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7fbf08afa000-7fbf08aff000 r-xp 00000000 08:13 8920221                    /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0

2、解决办法

网上找了查了很多资料,发现很可能是因为g2o与PCL库的built文件不匹配造成的,可以通过重新编译g2o

进行解决。

在g2o源码包下,通过如下方式重新安装g2o可解决:

$ mkdir build
$ cd build
$ cmake -DBUILD_WITH_MARCH_NATIVE=ON ..
$ make -j4
$ sudo make install

或者直接修改CmakeLists.txt文件(257行):

把BUILD_WITH_MARCH_NATIVE 的Cmake选项设置为: ON

if(CMAKE_COMPILER_IS_GNUCXX)
  option (BUILD_WITH_MARCH_NATIVE "Build with \"-march native\"" ON)

最后:若以上提到的点已全部修改,但是还是提示以上的错误,建议整个工程文件,重新解压配置。

猜你喜欢

转载自blog.csdn.net/weixin_44401286/article/details/102561953