SLAM算法与工程实践系列文章
下面是SLAM算法与工程实践系列文章的总链接,本人发表这个系列的文章链接均收录于此
SLAM算法与工程实践系列文章链接
下面是专栏地址:
SLAM算法与工程实践系列专栏
文章目录
- SLAM算法与工程实践系列文章
- 前言
- SLAM算法与工程实践------SLAM基本库的安装与使用(3):Pangolin库
- Pangolin
-
- 安装
-
- 错误
-
- [找不到 OpenGL](#找不到 OpenGL)
- libpango_windowing.so
前言
这个系列的文章是分享SLAM相关技术算法的学习和工程实践
SLAM算法与工程实践------SLAM基本库的安装与使用(3):Pangolin库
Pangolin
安装
(建议源码安装)
强烈推荐
Pangolin 0.6(稳定版) 提取码:45bo
We use Pangolin for visualization and user interface。
下载和安装说明可在以下位置找到:https://github.com/stevenlovegrove/Pangolin
按官网最新的说明
bash
# Clone Pangolin along with it's submodules
git clone --recursive https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
# See what package manager and packages are recommended
# 根据脚本一键安装推荐的包
./scripts/install_prerequisites.sh --dry-run recommended
# Override the package manager choice and install all packages
./scripts/install_prerequisites.sh -m brew all
然后是配置和编译
bash
# Configure and build
# 注意下面的两个命令都要执行,且是顺序执行
cmake -B build
cmake --build build
# with Ninja for faster builds (sudo apt install ninja-build)
cmake -B build -GNinja
cmake --build build
# GIVEME THE PYTHON STUFF!!!! (Check the output to verify selected python version)
cmake --build build -t pypangolin_pip_install
# Run me some tests! (Requires Catch2 which must be manually installed on Ubuntu.)
ctest
脚本一键安装依赖
install_prerequistites.sh文件的最后一行是安装库的命令
编译
Pangolin编译完成后,看一下有没有安装,如果没有安装就进入build文件夹进行安装
bash
cd build
sudo make install
安装完成后更新一下共享库的缓存
bash
sudo ldconfig
验证
bash
cd ../examples/HelloPangolin
mkdir build && cd build
cmake ..
make -j
./HelloPangolin
若安装成功,则会弹出以下窗口:
以下为老安装方法
1)安装依赖项
bashsudo apt-get install libglew-dev sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev sudo apt-get install libpython2.7-dev
2)安装 Pangolin
bashgit clone https://github.com/stevenlovegrove/Pangolin.git cd Pangolin mkdir build cd build cmake -DCPP11_NO_BOOSR=1 .. make -j sudo make install
这里的老版本教程可供参考,两种编译方法结果一样
错误
找不到 OpenGL
在编译Pangolin时,报错找不到 OPENGL
bash
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_glx_LIBRARY
OPENGL_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.16/Modules/FindOpenGL.cmake:397 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
components/pango_opengl/CMakeLists.txt:45 (find_package)
CMakeLists.txt:114 (include)
原因是没有OpenGL,安装ros后就可以正常编译了
libpango_windowing.so
编译完成后,在测试Pangolin的例子时报错,找不到libpango_windowing.so
bash
./HelloPangolin: error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such file or directory
解决办法:
参考:error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such
输入命令
bash
sudo ldconfig
然后就可以正常运行