记录一下ubuntu18.04 下启动g2o_viewer的段错误及其解决办法
本文是亲身经历后总结而成,不一定适用所有情况,还请谨慎参考!希望大家都可以顺利解决问题!
问题出现背景:
尝试运行高博视觉slam14讲中第十一讲位姿图优化时,发现g2o_viewer指令错误
问题类型及解决方案:
一、首先报错:段错误(核心已转储),也就是Segmentation fault
该问题通过
ldd /usr/lib/x86_64-linux-gnu/libQGLViewer.so
ldd /usr/local/bin/g2o_viewer
发现同时存在有对qt4和qt5库文件的依赖(直接看依赖项中的qt项后缀数字)
网上目前我找到的方案有两种:
1. 安装qt4,删除重新编译安装g2o 但是该方案在我电脑上无效 原因应该是还存在对qt5的依赖项
2. 删除ros-melodic-libg2o的依赖,可我本来就没下载该依赖项
我的解决方案:
1.删除qt4: sudo apt-get autoremove --purge libqt4-[a-z]*
同时删除掉qt4文档 sudo rm -r /usr/lib/x86_64-linux-gnu
2.安装依赖项:sudo apt-get install libqglviewer-dev-qt5
以及sudo apt-get install libqglviewer2-qt5
3.以防万一 修改默认的qt版本:
/usr/lib/x86_64-linux-gnu/qt-def

在尝试运行高博视觉slam14讲的位姿图优化时,遇到g2o_viewer启动的段错误。经过排查,问题在于qt4和qt5库文件的冲突。解决方案包括删除qt4,安装特定依赖,修改g2o的cmake配置,并调整动态库路径。完成这些步骤后,成功解决了g2o_viewer无法启动的问题。
4101

被折叠的 条评论
为什么被折叠?



