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

相关推荐
a41324472 小时前
ubuntu 25 安装vllm
linux·服务器·ubuntu·vllm
上天_去_做颗惺星 EVE_BLUE9 小时前
Docker高效使用指南:从基础到实战模板
开发语言·ubuntu·docker·容器·mac·虚拟环境
芋圆奶绿,要半t13 小时前
ubuntu20/2204修改系统时间的命令
ubuntu
s_daqing15 小时前
arm的ubuntu启动node
linux·arm开发·ubuntu
GIS瞧葩菜17 小时前
entity几何体轴编辑(沿 Z 轴平移)完整流程拆解
linux·运维·ubuntu
bjxiaxueliang1 天前
一文解决蓝牙连接难题:Ubuntu命令行蓝牙强制配对
linux·ubuntu·蓝牙连接命令
Will_Ye1 天前
Ubuntu22.04 蓝牙设备快速自动连接
ubuntu·bluetoothctl
chen_jared1 天前
slam十四讲第五章习题:相机内参变化与SLAM快门选择
数码相机·slam·标定
lihe7581 天前
每天凌晨3点自动同步UBUNTU源
linux·运维·ubuntu·本地源
zbliquan1 天前
SS928v100远程ubuntu交叉编译开发环境搭建
linux·运维·ubuntu