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即可。

相关推荐
y1x2y36 小时前
【HITCSAPP 哈工大计算机系统期末大作业】 程序人生-Hello’s P2P
linux·程序人生·ubuntu
后端木木7 小时前
一键 Ubuntu、Debian、Centos 换源(阿里源、腾讯源等)
ubuntu·centos·debian
Aaron.Ma11 小时前
ubuntu自定义服务自动启动
linux·服务器·ubuntu
乐观主义现代人13 小时前
centos 9/ubuntu 一次性的定时关机
linux·ubuntu·centos
无聊的小坏坏1 天前
Linux 进程调度与管理:从内核管理到调度机制的深度解析
linux·ubuntu
FungLeo1 天前
node 进程管理工具 pm2 的详细说明 —— 一步一步配置 Ubuntu Server 的 NodeJS 服务器详细实录 7
linux·服务器·ubuntu·pm2·node 进程管理
菜菜笔记1 天前
Ubuntu 挂载新盘
linux·运维·ubuntu
youliroam1 天前
Ubuntu24.04.2 + kubectl1.33.1 + containerdv1.7.27 + calicov3.30.0
ubuntu·kubernetes·kubesphere·containerd·calico
慌糖1 天前
Ubuntu安装Docker命令清单(以20.04为例)
linux·ubuntu·docker
#君君#2 天前
解决 Ubuntu 20.04 虚拟机中 catkin_make 编译卡死问题
linux·运维·ubuntu