zoukankan      html  css  js  c++  java
  • ORB_SLAM2安装

    进入工程目录,我们发现有两个sh文件,一个是build.sh另一个是build_ros.sh

    这两个都可以进行ORB_SLAM2的安装,我们先来看一下build.sh

     1 echo "Configuring and building Thirdparty/DBoW2 ..."
     2 
     3 cd Thirdparty/DBoW2
     4 mkdir build
     5 cd build
     6 cmake .. -DCMAKE_BUILD_TYPE=Release
     7 make -j
     8 
     9 cd ../../g2o
    10 
    11 echo "Configuring and building Thirdparty/g2o ..."
    12 
    13 mkdir build
    14 cd build
    15 cmake .. -DCMAKE_BUILD_TYPE=Release
    16 make -j
    17 
    18 cd ../../../
    19 
    20 echo "Uncompress vocabulary ..."
    21 
    22 cd Vocabulary
    23 tar -xf ORBvoc.txt.tar.gz
    24 cd ..
    25 
    26 echo "Configuring and building ORB_SLAM2 ..."
    27 
    28 mkdir build
    29 cd build
    30 cmake .. -DCMAKE_BUILD_TYPE=Release
    31 make -j

    我们通过查看orb_slam的代码框架可以知道,有2个lib库需要我们编译。一个是DBoW2,另一个是g2o,按照上面的指示可以分别将lib库编译完成。

    解压ORBvoc.txt.tar.gz,然后在工程目录下建立build,然后编译,便可以成功。

    但是第一次编译,由于没有安装一些依赖,可能会出现以下问题:

     1 //若第一次编译,可能得到以下错误
     2 CMake Error at CMakeLists.txt:40 (find_package):
     3   By not providing "FindPangolin.cmake" in CMAKE_MODULE_PATH this project has
     4   asked CMake to find a package configuration file provided by "Pangolin",
     5   but CMake did not find one.
     6 
     7   Could not find a package configuration file provided by "Pangolin" with any
     8   of the following names:
     9 
    10     PangolinConfig.cmake
    11     pangolin-config.cmake
    12 
    13   Add the installation prefix of "Pangolin" to CMAKE_PREFIX_PATH or set
    14   "Pangolin_DIR" to a directory containing one of the above files.  If
    15   "Pangolin" provides a separate development package or SDK, be sure it has
    16   been installed.
    19 -- Configuring incomplete, errors occurred!
    20 See also "/home/leonsun/backup/orb_slam2/ORB_SLAM2/build/CMakeFiles/CMakeOutput.log".
    21 //没有安装Pangolin

    解决方法如下:

     1 //到home目录
     2 mkdir Software
     3 cd Software
     4 //下载Pangolin并且编译
     5 git https://github.com/stevenlovegrove/Pangolin.git
     6 //右键提取到此处解压Pangolin文件
     7 cd Pangolin
     8 mkdir build
     9 cd build 
    10 cmake ..

    但是得到以下错误

     1 -- The C compiler identification is GNU 5.4.0
     2 -- The CXX compiler identification is GNU 5.4.0
     3 -- Check for working C compiler: /usr/bin/cc
     4 -- Check for working C compiler: /usr/bin/cc -- works
     5 -- Detecting C compiler ABI info
     6 -- Detecting C compiler ABI info - done
     7 -- Detecting C compile features
     8 -- Detecting C compile features - done
     9 -- Check for working CXX compiler: /usr/bin/c++
    10 -- Check for working CXX compiler: /usr/bin/c++ -- works
    11 -- Detecting CXX compiler ABI info
    12 -- Detecting CXX compiler ABI info - done
    13 -- Detecting CXX compile features
    14 -- Detecting CXX compile features - done
    15 Build type not set (defaults to release)
    16 -DCMAKE_BUILD_TYPE=Debug for debug
    17 CMake Error at CMakeModules/FindGLEW.cmake:51 (MESSAGE):
    18   Could not find GLEW
    19 Call Stack (most recent call first):
    20   src/CMakeLists.txt:122 (find_package)

    没有安装GLEW,利用apt-get进行安装

     1 sudo apt-get install libglew-dev  

    重新编译Pangolin,成功。然后按照上部分提供的官网教程进行编译

    接着我们来看一下build_ros.sh

    1 echo "Building ROS nodes"
    2 
    3 cd Examples/ROS/ORB_SLAM2
    4 mkdir build
    5 cd build
    6 cmake .. -DROS_BUILD_TYPE=Release
    7 make -j

    官方给的教程就是运行这个文件进行编译。也可以进行成功编译。


  • 相关阅读:
    班级派团队项目小计(七)
    班级派团队项目小计(六)
    班级派团队项目小计(五)
    班级派团队项目小计(四)
    班级派团队项目小计(三)
    场景描述思密达~
    班级派团队项目小计(二)
    班级派团队项目小计(一)
    构建之法阅读笔记02
    JS获取坐标
  • 原文地址:https://www.cnblogs.com/leon-FFF/p/9133718.html
Copyright © 2011-2022 走看看