【问题收集】slam中常见make问题错误 相关总结
前言
主要总结最近slam mapping编译 等cmake使用上遇到的错误和解决方案
欢迎在评论区共同提出 我及时总结到这里面去 都是些坑
0. opencv 相关
cv2.error: /build/opencv-L2vuMj/opencv-3.2.0+dfsg/modules/highgui/src/window.cpp:304: error: (-215)
主要是老胡的opencv版本问题… emm 需要走3.4,但是默认是3.2,所以会冲突
完整方案:https://chowdera.com/2022/134/202205140601479701.html
https://blog.csdn.net/qinqinxiansheng/article/details/120219388
最好的方案是:https://www.icode9.com/content-3-1356655.html
随后发现可以走ExternalProject_Add 会更好,TODO添加
1. gcc相关
很多关于这个点的教程 动不动就rm -rf 其实把 有时候挺危险的,包括本人自己以前 也比较喜欢 rm -rf,但是还是慎用,有set 的方式就用set哈
版本过低 no such file
主要是编译vdbfusion example时遇到的问题
fatal error: charconv: No such file or directory #include <charconv>fatal error: filesystem: No such file or directory #include <filesystem>
然后搜到了一位韩国老哥的正解:https://jtrimind.github.io/troubleshooting/filesystem/ 升级gcc,如下
gcc --version # 检查版本
sudo apt install gcc-8 g++-8 # 安装8.0版本# 设置系统默认值
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8# 再次检查
gcc --version
然后配置CFLAGS为17即可解决,在CMakeLists.txt中加入:
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_FLAGS "--std=c++17 -lstdc++fs")
fatal error: execution: No such file or directory
同上理,但是有些可能会要求g+±9以上的 所以再次添加
sudo apt install -y gcc-9 g++-9 -y
# 设置系统默认值
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 900 --slave /usr/bin/g++ g++ /usr/bin/g++-9# 再次检查
gcc --version
segmentation fault
主要是使用上一个 filesystem 出现 segmentation fault,主要是把编译能过 一运行就不行
定位到这个问题 就用了10分钟,主要是他不报错 就只是segmentation fault,和帅讨论后说是 :
库版本有冲突也会这个效果, 而且感觉一般都是库依赖的比较低层的系统库的问题
截图报错如下
最后找到了解决方案是
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_COMPILER "g++")
set(CMAKE_CXX_FLAGS "--std=c++17 -lstdc++fs")
这样是不够的 需要把flag写到link libraries 我真的涨见识了,所以我最后写成了这样
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_COMPILER "g++")
set(CMAKE_CXX_FLAGS "--std=c++17 -lstdc++fs")
add_library(datasets OBJECT)
target_sources(datasets PRIVATE KITTIOdometry.cpp)
target_compile_features(datasets PRIVATE cxx_std_17)
target_link_libraries(datasets PUBLIC Eigen3::Eigen "-lstdc++fs")
关于filesystem的一系列讨论:
- https://bugs.launchpad.net/ubuntu/+source/gcc-8/+bug/1824721/comments/6
- https://stackoverflow.com/questions/56615841/passing-stdfilesystempath-to-a-function-segfaults
- https://stackoverflow.com/questions/69122701/segmentation-fault-with-stdfilesystem-path-object
- 最后是这个链接里看到的:Why does this code results in an segmentation fault error? click
- https://stackoverflow.com/questions/39231363/fatal-error-filesystem-no-such-file-or-directory
赠人点赞 手有余香
【问题收集】slam中常见make问题错误 相关总结相关推荐
- [柒穆雨]LOGO 设计中常见的设计错误与设计方式
LOGO 设计中常见的设计错误与设计的方式,LOGO 设计一直都是设计圈中的热门话题,也是设计师的老大难问题.面对来自各方的压力,想要设计一个完美的 LOGO 并不是一件轻松的工作.这篇文章分析下LO ...
- 在系统二进制文件中检测到错误_门禁管理系统施工中常见的布线错误
现在门禁系统已经深入到人们的生活中,门禁系统安装应用越来越广泛.但是门禁系统施工布线都需要注意哪些你了解吗?下面就门禁系统施工布线过程中的几大错误现象给大家提个醒. 一.用网络线布电锁锁到控制器的线! ...
- 盘点一个网络爬虫中常见的一个错误
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 圣朝无阙事,自觉谏书稀. 大家好, ...
- 开发中常见的低级错误--被自己气哭
开发中常见的低级错误--被自己气哭 前言 踩过的坑 请求路径写错 用生产地址测试本地代码 看错项目 变量名拼错 提交了相似分支 复制粘贴的分支逻辑忘记改过来 数据库存储超限制后会被自动截断 再会 前言 ...
- 写作---英语中常见的写作错误有哪些
写作---英语中常见的写作错误有哪些 一.总结 一句话总结: 1.句子成分残缺不全 2.句子成分多余(多谓语) 3.主谓不一致(单复数) 4.动词时态.语态的误用(时态) 5.词类混淆(词性) 1.出 ...
- SLAM机器人开发(三)SLAM中常见的里程计
SLAM机器人开发(三)SLAM中常见的里程计 里程计分类 车轮里程计 惯性里程计 电磁波(光学)雷达 超声波雷达 视觉里程计 里程计对比图 里程计分类 里程计(Odometry)这个词是由希腊单词o ...
- 计算机中常见的英语错误提示,BIOS出错英文提示信息大全 -电脑资料
BIOS出错英文提示信息大全 -电脑资料 时间:2019-01-01 [www.unjs.com - 电脑资料] 第二电脑网收集的BIOS出错英文提示信息大全,对硬件出错的判断非常有用 Drive A ...
- ava web 开发过程中常见的一些错误
现在通常人们讨论和实现Java WEB应用时,往往过度关注框架和平台,对常见实现的各种模式未有深入的考虑.自从在IBM DevelopWork上见到一个名词"错误模式",就一直仔细 ...
- java中常见的编译错误的是_编译时JAVA最常见的错误有哪些
如果你正学习Java语言,你在编译和执行代码的时候遇到问题,一般来说问题将分为2类:无论你遇到的是编译时错误,这说明你的程序编译失败,还是你遇到运行时错误,这是指错误发生在你成功地编译了程序但不能运行 ...
最新文章
- C#在WinForm中实现清空指定类型控件的内容
- 如何成为简历界的“老司机”?这些简历技能你get到了吗?
- java 转xml 变成两根下划线_XStream实现xml和java对象之间的互相转换(包括对属性,别名,下划线_的处理),同理JSON也可以...
- 如何配置代码自动校验功能
- numpy的通用函数:快速的元素级数组函数
- 学习索引结构的一些案例——Jeff Dean在SystemML会议上发布的论文(下)
- kafka消息队列的概念理解
- 国产化图形引擎一词引发的感想!
- 学生学籍管理系统简单设计(上)
- android开发股票数据接口,股票数据接口-股票数据接口api
- HorizontalScrollView实现Gallery
- C语言字符数组的初始化
- Mask Scoring Rcnn论文解读《Mask Scoring R-CNN》
- 意料之外,这个应用居然霸榜了苹果APP Store排行榜
- Git 的常规分支使用【dev和master】
- 作业十: 坦克对战游戏 AI 设计
- Android 12 变更及适配攻略
- nn.GLU()的实现
- 35.搭建NFS服务器
- 一文读懂知识图谱的商业应用进程及技术背景