0.注意啊啊啊啊啊啊啊
系统:Ubuntu 18.04 (安装系统后一定要换成国内的清华源和阿里源啊啊啊啊啊)
1.最先装Eigen否则会报找不到Eigen的error
#解压缩安装包
#安装
cd eigen-git-mirror
mkdir build
cd build
cmake ..
sudo make install
#安装完成后,移动头文件(因为经常使用#include <Eigen/Dense>而不是使用#include<eigen3/Eigen/Dense>,所以要做下处理。)
sudo cp -r /usr/local/include/eigen3/Eigen /usr/local/include
2.Pangolin要安装v0.5版本
昼行大佬的解答
去(https://github.com/stevenlovegrove/Pangolin)找0.5版本,下载并将解压后的文件夹改名为Pangolin,并放置在home文件夹下。
#安装依赖项
sudo apt-get install libglew-dev
sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev
sudo apt-get install libpython2.7-dev
#安装Pangolin
#如果安装v0.5版本请跳过git步骤
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOSR=1 ..
make -j
3.std::map must have the same value_type as its allocator
cgnerds大佬的解答包治百病
github大佬的解答
#将 ~/ORB_SLAM2/include/LoopClosing.h::49 处的
typedef map<KeyFrame *, g2o::Sim3, std::less<KeyFrame *>, Eigen::aligned_allocator<std::pair<const KeyFrame*, g2o::Sim3>>> KeyFrameAndPose;
#改为
typedef map<KeyFrame *, g2o::Sim3, std::less<KeyFrame *>, Eigen::aligned_allocator<std::pair<KeyFrame *const, g2o::Sim3>>> KeyFrameAndPose;
4.‘usleep’ was not declared in this scope
#将头文件“#include<unistd.h>”添加到下列文件中
~/ORB_SLAM2/Examples/Monocular/mono_euroc.cc
~/ORB_SLAM2/Examples/Monocular/mono_kitti.cc
~/ORB_SLAM2/Examples/Monocular/mono_tum.cc
~/ORB_SLAM2/Examples/RGB-D/rgbd_tum.cc
~/ORB_SLAM2/Examples/Stereo/stereo_euroc.cc
~/ORB_SLAM2/Examples/Stereo/stereo_kitti.cc
~/ORB_SLAM2/src/LocalMapping.cc
~/ORB_SLAM2/src/LoopClosing.cc
~/ORB_SLAM2/src/System.cc
~/ORB_SLAM2/src/Tracking.cc
~/ORB_SLAM2/src/Viewer.cc