Ubuntu24.04编译ORB_SLAM的一系列报错解决

Ubuntu24.04编译ORB_SLAM的一系列报错解决

decay_t报错

报错信息:error: 'decay_t' is not a member of 'std';did you mean 'decay'

将CMakeLists.txt中第17行的c++标准修改为c++14即可:

修改前:

cmake 复制代码
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)

修改后:

cmake 复制代码
CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX11)

Pangolin报错

报错信息:gl.hpp:348:5: error: 'glCopyImageSubDataNV' was not declared in this scope

gl.hpp:522:9: error: 'glDeleteRenderbuffersEXT' was not declared in this scope

诸如此类的错误。

这是由于Pangolin版本过高造成的。应编译v0.6版。对于已经运行过sudo make install的目录,首先运行sudo make uninstall,然后将源码版本更改为0.6,再重新编译。完整的命令如下:

bash 复制代码
cd ORB_SLAM3
cd build
sudo make uninstall
cd ..
git checkout v0.6
rm -r build
mkdir build
cd build
cmake ..
make
sudo make install

-lboost-serialization -lcrypto选项报错

原因是系统中找不到boost-serialization和ssl库。运行下面命令安装:

bash 复制代码
sudo apt-get install libboost-all-dev libssl-dev

安装后,再次运行./build.sh即可。

相关推荐
Hfc.27 分钟前
ubuntu20.04系统搭建k8s1.28集群-docker作为容器运行时
ubuntu·kubernetes
Toky Zhu38 分钟前
ubuntu清除缓存
linux·ubuntu·缓存
我不是秃头sheep5 小时前
Ubuntu 安装 Docker(镜像加速)完整教程
linux·ubuntu·docker
小猪写代码6 小时前
Ubuntu 系统默认已安装 python,此处只需添加一个超链接即可
linux·python·ubuntu
有谁看见我的剑了?8 小时前
ubuntu 22.04 wifi网卡配置地址上网
linux·运维·ubuntu
码农新猿类8 小时前
Ubuntu摄像头打开失败
linux·运维·ubuntu
Livan.Tang8 小时前
LIO-SAM框架理解
人工智能·机器学习·slam
qq_441685758 小时前
King3399(ubuntu文件系统)KGDB配置与功能测试
ubuntu
PWRJOY8 小时前
Ubuntu磁盘空间分析:du命令及常用组合
linux·运维·ubuntu