所有的文件上传百度云:
链接:
https://pan.baidu.com/s/1xheyHxPwaD8Tb9QJ6SAHUA
提取码: gmt9
一个搞SLAM的小白,新装完ubuntu系统后应该配置这些内容
1.换源
推荐使用鱼香ros:
wget http://fishros.com/install -O fishros && . fishros
2.安装ubuntu的显卡驱动
参考:
https://blog.csdn.net/handily_1/article/details/119606399?spm=1001.2014.3001.5501
查看以下本机适配驱动:
sudo ubuntu-drivers devices
选择一个驱动安装
sudo apt install nvidia-driver-470
在nvidia-setting设置为性能模式
参考1
参考2
3.安装ros
推荐一行代码搭建机器人开发环境(ROS/ROS2/ROSDEP)
wget http://fishros.com/install -O fishros && . fishros
安装完后用roscore测试一下
4.安装slam常用库
4.1安装eigen库
一般考虑eigen3.3.3以上
链接:https://gitlab.com/libeigen/eigen/-/releases
点击other downloads->选择合适版本文件->点击.zip文件下载
随后在终端中输入以下指令:
cd eigen-3.3.7 # 进入eigen解压的目录,注意文件名
mkdir build # 新建一个build文件夹
cd build # 进入build文件夹
cmake .. # 用cmake生成Makefile
sudo make install # 安装
注意现在此时Eigen头文件默认安装在/usr/local/include/eigen3中,以后需要这个库时,在对应的CMakeLists.txt中引用该目录即可
eigen软链接: 只使用find_package(Eigen3 REQUIRED)命令的话有可能无法找到,需要
sudo ln -s /usr/local/include/eigen3/Eigen /usr/include/Eigen
sudo ln -s /usr/local/include/eigen3/unsupported /usr/include/unsupported
查看现存的Eigen3版本
dpkg -s libeigen3-dev | grep Version
删除旧的Eigen库的方法:
通过以下指令查找Eigen库所在的位置:
sudo updatedb
locate eigen3
删除:
sudo rm -rf /usr/include/eigen3
sudo rm -rf /usr/lib/cmake/eigen3
sudo rm -rf /usr/local/include/eigen3
sudo rm -rf /usr/share/doc/libeigen3-dev
sudo rm -rf /usr/local/share/pkgconfig/eigen3.pc /usr/share/pkgconfig/eigen3.pc /var/lib/dpkg/info/libeigen3-dev.list /var/lib/dpkg/info/libeigen3-dev.md5sums
sudo rm -rf /usr/local/lib/pkgconfig/eigen3.pc
sudo rm -rf /usr/local/share/eigen3
最后可再次利用以下代码查看删除情况:
sudo updatedb
locate eigen3
pkg-config --modversion eigen3
4.2安装PCL库
安装有问题参考:https://blog.csdn.net/handily_1/category_11560732.html?spm=1001.2014.3001.5482
安装依赖:
sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.8 libflann-dev
sudo apt-get install libeigen3-dev 这个需要自己下载正确版本安装
sudo apt-get install libboost-all-dev
sudo apt-get install libvtk7.1-qt libvtk7.1 libvtk7-qt-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install openjdk-8-jdk openjdk-8-jre
下载编译
如果报错
error 2:#include <boost/uuid/sha1.hpp>
原因:sha1.hpp的路径不对(查找自己电脑上sha1.hpp的路径)解决:在pcl_visualizer.cpp中将#include <boost/uuid/sha1.hpp>改为#include
<boost/uuid/detail/sha1.hpp>
如报错undefined reference to
LZ4_resetStreamHC' /bin/ld: ../../lib/libpcl_kdtree.so.1.8.0: undefined reference to
解决:kdtree/CMakeFiles/pcl_kdtree.dir/下的link.txt里在末尾写上:-llz4
ubuntu20编译pcl1.8报错可以
参考:https://www.pudn.com/news/632469aab283a472d0220bed.html
等待漫长的编译之后
sudo make install
查看pcl版本
如果是安装ROS时自带的PCL,查看 pcl 版本指令是:
gedit /usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfigVersion.cmake
如果是通过源码安装的PCL,查看 pcl 版本指令是:
gedit /usr/local/share/pcl-1.8/PCLConfigVersion.cmake # 注意: 指令中 pcl-1.8/ 根据自己电脑 /usr/local/share/ 下的 pcl 文件夹而定,其他电脑可能是别的,比如 pcl-1.9/
4.3安装ceres库
参考:
https://blog.csdn.net/RuningLING/article/details/119419905
https://blog.csdn.net/weixin_44468210/article/details/107124825
官网下载链接:https://github.com/ceres-solver/ceres-solver
安装依赖:
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev libgoogle-glog-dev libgtest-dev
然后:
cd ceres-solver
mkdir build
cd build
cmake ..
make
sudo make install
安装完后查看Ceres版本
因为Ceres库版本的定义在 /usr/local/include/ceres/version.h 里面,所以
sudo cat /usr/local/include/ceres/version.h
#注意:将编译选项打开
cmake -DEIGENSPARSE=ON …
注:ceres1.14配合eigen3.4食用
4.4安装OpenCV库
使用以下命令检查OpenCV版本
pkg-config --modversion opencv
4.5 Sophus库
sophus依赖eigen库,3.3以下的版本的eigen请先卸载
ubuntu20之前我安装非模板类老是报错,最后原因就是eigen不对
非模板类:
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build
cd build
cmake ..
make
4.6 Pangolin
sudo apt-get install libglew-dev libboost-dev libboost-thread-dev libboost-filesystem-dev
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOST= 1 ..
make
sudo make install
4.7 g2o
sudo apt-get install libsuitesparse-dev qtdeclarative5-dev qt5-qmake libqglviewer-headers
git clone https://github.com/RainerKuemmerle/g2o.git
cd g2o
mkdir build
cd build
cmake ..
make
sudo make install
4.8 DBoW3
git clone https://github.com/rmsalinas/DBow3.git
cd DBow3
mkdir build
cd build
cmake ..
make
sudo make install
4.9 安装gtsam
mkdir build
cd build
cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF -DGTSAM_USE_SYSTEM_EIGEN=ON ..
sudo make install
sudo ldconfig
4.10 安装gflags
git clone https://github.com/gflags/gflags.git
cd gflags
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON -DGFLAGS_NAMESPACE=gflags ../
make -j4
sudo make install
4.11安装glog
git clone https://github.com/google/glog
cd glog
mkdir build && cd build
cmake -DGFLAGS_NAMESPACE=google -DCMAKE_CXX_FLAGS=-fPIC -DBUILD_SHARED_LIBS=ON ..
make
sudo make install
sudo ldconfig
# glog的头文件位于/usr/local/include
# glog的库文件位于/usr/local/lib
5 安装配置vscode
插件:
C/C++ #开发必备
C/C++ Advanced Lint #静态检查
C/C++ Extension Pack #扩展包
C/C++ Snippets #常用代码片段
Error Lens #错误高亮显示
Include AutoComplete #头文件自动补全
Code Runner #运行
Better C++ Synatx
C/C++ Themes
Chinese(Simplified)
CMake
CMake Tools
compareit
Git Graph
VScode中配置ROS环境
编译执行快捷键:ctrl+shift+b
运行节点执行快捷键ctrl + shfit + p
输入ROS:Run a Ros executable
依次输入创建的功能包的名称以及节点名称(即编译成功后二进制文件的名称,注意不是文件名),等价于rosrun
6 安装vim
自带的vim版本太老了
sudo apt install vim
7 安装indicator-sysmonitor
标题栏实时显示上下行网速、CPU及内存使用率
sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor
sudo apt-get update
sudo apt-get install indicator-sysmonitor
开机自启动别忘了.
sudo apt-get install gnome-tweak-tool
或者
sudo apt-get install gnome
## 8 安装indicator-sysmonitor
9 与windows出现时间冲突
Linux的环境下此命令行的作用就是关闭UTC(不可以执行的话就加上sudo试试)。
timedatectl set-local-rtc 1 --adjust-system-clock
10 安装微信
https://blog.csdn.net/ccsodefhy/article/details/123193936
11 安装cloudcompare
之前直接sudo apt install 安装后打开pcd报格式错,需要安装不同版本
sudo snap install cloudcompare
sudo snap refresh --edge cloudcompare
这样才能顺利打开pcd文件