slam14讲 ch11 编译及运行时的错误 (段错误 核心已转储)

博客讲述了在编译项目时遇到的CMake配置错误,通过将库文件从.a改为.so解决了问题。此外,针对运行时图片路径错误,提供了使用绝对路径或移动数据文件夹的解决办法。还提到了因OpenCV版本不匹配导致的段错误,通过更新CMakeLists.txt中的OpenCV版本号修复了问题。
摘要由CSDN通过智能技术生成

1.编译错误,如图:

将CMakeLists.txt文件中的set( DBoW3_LIBS "/usr/local/lib/libDBoW3.a" ) 修改为:

set( DBoW3_LIBS "/usr/local/lib/libDBoW3.so" )

2.运行错误1:

 即:输出的单词数为0的情况,这是输入图片路径的问题,可以将主程序中的

中的路径换成绝对文件路径,比如我的电脑下的路径为:

方法2:也可以将data文件夹拷贝到自己建立的build编译文件夹下直接运行,不用更改路径,千万注意 .data/ 这个/不能省略!

3.运行错误2:

 出现:段错误(核心已转储)的问题,我自己的问题是opencv版本的问题,我安装的是opencv4.2  而原代码中使用的是3  所以出现了报错,只需要将CMakeLists.txt中的:

 修改为自己对应的opencv版本就行 比如我的是4.2:

 问题得到解决,继续加油!!!

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值