Loam的編譯安裝執行及可能遇到的問題

2021-08-28 19:59:08 字數 3696 閱讀 7919

對於loam和ros的教程大部分都不是很詳細,尤其是對於一些報錯的解決方法,這周成功編譯並執行了loam,把詳細過程以及遇到的問題記錄下來以供交流備份。

一.環境的安裝(已安裝ubuntu和ros的可以跳過)

1.loam是在ubuntu系統下執行的,16.04和14.04都可以,不推薦虛擬機器使用ubuntu,容易遇到很多錯誤,推薦雙系統安裝             ubuntu16.04,

2.在ubuntu系統下,想編譯使用loam,需要安裝ros,安裝方法見ros wiki,這裡只提供ubuntu 16.04加ros kinetic的安裝方法     如果在初始化rosdep時遇到問題,更換網路或者使用流量開熱點,一般就可以解決。這個問題常出現於網路情況不好。

二.loam的依賴的安裝

loam的編譯和執行需要使用pcl,如果使用的是ubuntu 16.04和kinetic,需要使用源**進行編譯安裝pcl1.8,作者實測如果使用apt-get安裝的pcl1.7會造成後續執行loam時multiscanregistration出錯,如果已經安裝了pcl1.7,可以先解除安裝pcl1.7

sudo apt-get remove libpcl1.7

sudo apt-get remove libpcl-*

如果遇到*號的報錯,輸入 (原因:如果使用zsh等shell,不支援萬用字元,可以切換到bash來執行也可以修改zshrc來支援萬用字元,本文只提供切換方法,如果需要修改zshrc,請在zshrc後輸入setopt nonomatch )

/bin/bash
後再重新執行。再解除安裝時可能會解除安裝掉一部分的ros檔案,選yes就可以,後續編譯安裝pcl1.8後可以再安裝ros的檔案。

安裝pcl的依賴

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 libvtk5.10-qt4 libvtk5.10 libvtk5-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 qt-sdk openjdk-8-jdk openjdk-8-jre

在安裝依賴時遇見vtk5的那個輸入後會提示解除安裝一堆東西,這行可以直接跳過。

git clone
如果沒有安裝git,可以輸入來安裝git。

sudo apt-get install git
編譯pcl原始碼

首先進入pcl的源**檔案新建release資料夾並執行cmake

cd pcl

mkdir release

cd release

cmake -dcmake_build_type=none -dcmake_install_prefix=/usr \

-dcmake_install_prefix=/usr ..

cmake成功後開始進行編譯,如果你的電腦cpu為8執行緒使用

make -j8
如果為4執行緒輸入,依次類推2執行緒,6執行緒

make -j4
推薦使用cpu的最大執行緒來編譯,作者使用7700hq 8執行緒編譯了大約20分鐘。中途的warning可以無視

編譯成功後輸入進行安裝

sudo make install
之後使用apt-get安裝ros的一些檔案

sudo apt-get install ros-kinetic-pcl-conversions ros-kinect-pcl-ros
至此,pcl1.8使用源**編譯安裝的過程已經完成。

三.loam的編譯安裝

1.loam的編譯需要使用catkin,如果已經建立catkin_ws,可以跳過下面這步

mkdir -p catkin_ws/src

cd catkin_ws/src

catkin_init_workspace

cd ~/catkin_ws/src # catkin_ws自己的ros工作空間。

git clone 

3.編譯loam

cd catkin_ws

catkin_make

source ~/devel/setup.bash

source命令在每開啟乙個新的終端需要重新輸入,也可以把它寫入到.bahsrc裡面

至此,loam已經編譯完成

四.loam的執行

1.使用bag檔案

roslaunch loam_velodyne loam_velodyne.launch
執行後會開啟rviz並等待雷達資料。

rosbag play ~/nsh_indoor_outdoor.bag
至此,可以在rviz裡面觀察到點雲了

2.使用pcap檔案:

安裝驅動

sudo apt-get install ros-kinetic-velodyne
rosrun velodyne_driver velodyne_node _model:=vlp16 _pcap:=/home/wangzhiyong/dianyun1.pcap _read_once:=true
需要修改pcap檔案的路徑以及名稱

五.錯誤處理

1.multiscanregistration報錯

2.error: 『downsizefiltermap』 was not declared in this scope錯誤

3.提示缺少ros package

輸入 

sudo apt-get install ros-kinetic-******xx
來安裝缺少的****** package。

使用vlp16執行loam參考

Phonegap專案建立 編譯 安裝 執行

一 建立 phonegap專案 1.cd workspace 2.建立phonegap專案 cordova create 目錄 識別符 顯示名 例如 cordova create hello com.example.hello myhello 目錄結構如下 1 其中www就是目錄程式的主目錄 www...

安裝執行時及例程

安裝執行時及例程 安裝執行時環境 只需要裝一次,您就可以在任何時候執行air程式了。安裝windows版本 2.雙擊安裝檔案air1 win beta1.exe 3.根據提示完成安裝。4.如果你修改了mms.cfg 檔案,則在執行air程式之前刪除它,在windows作業系統中該檔案放置在c win...

scrapy的安裝執行

方式一 直接在pycharm裡面的settigs projectinterpreter下面新增scrapy 方式二 方式一不可行,手動新增scrapy框架 第一步 安裝好conda和python 第二步 將conda配置到環境變數 第三步 在cmd安裝 conda install c conda f...