最近用clion调试Orb_slam3,编译通过后,点击运行,总是在orb3中,pangolin的Viewer可视化界面跳出的一瞬间,程序奔溃,报这个错误,
terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc
没办法超出我的认知范围,最后只能用终端命令行运行ORB_slam3。
最近实在是被不能断点调试所折磨,尝试用VScode调试,结果却在断点的地方不停止。搜索原因是发现vscode需要手动设置Cmake编译模式为Debug,虽然我尝试了之后还是不行。突然想到,是不是build.sh脚本文件中的三个依赖包DBoW2、g2o、Sophus没有设置Debug模式,然后我把build.sh文件中的
cmake .. -DCMAKE_BUILD_TYPE=Release
全都改为
cmake .. -DCMAKE_BUILD_TYPE=Debug
运行一遍build.sh之后,再用clion编译orbslam3并运行调试,大功告成!