Cartographer入坑記(1)環境搭建

谷歌的Cartographer由於其開源社區特性,非常適合SLAM入坑。

入坑前注意兼容性,比如ROS使用kinetic,則ubuntu版本建議爲16,不要圖新鮮升什麼ubuntu18。都是血淚教訓。

可能的話,儘量一臺虛擬機做一件事,保持純淨性,避免系統、環境、配置等的互相影響。一個典型的例子是,我之前根據別家教程安裝了pcL庫,版本爲1.9,後續按谷歌教程裝cartographer時,由於1.9的pcl要求c++14,而配置文件裏面是c++11,調節起來就很麻煩,而且往往一個坑接一個坑,因爲你的環境和教程不一樣,你就可能遇到很多本來新系統中不會遇到的問題。

另外,cartorgrapher ROS本身並沒有包含ROS,所以需要先安裝好ROS(下載大約2G的內容),參見http://wiki.ros.org/kinetic/Installation/Ubuntu。先安裝ROS的好處在於,可以自動安裝ROS的依賴項。

建議使用官方提供的清華源。注意如果採用源碼編譯,內存一定要足夠,可以用swap空間的方式暫時的解決內存不足的問題,但長遠看還是需要增加內存容量。

安裝Cartographer ROS時,首先參考https://google-cartographer-ros.readthedocs.io/en/latest/compilation.html

但是要注意cere-solver的原始路徑不可用需要替換,參考https://blog.csdn.net/rjasd1128hf/article/details/79888305

另外,建議下載前,虛擬機裝下shadow分割socks,然後在shell裏面開一下代理,否則速度太慢。下面是一個典型的代理腳本(代理服務器,端口之類的信息需要你自己百度找免費的或者付費搭VPS),拷貝到/bin下面賦權爲755,之後shell中提前運行下 XX.sh start即可,此後,shell中的下載都會走代理。

#!/bin/bash
start() {
        if [ "$(pidof sslocal)" == "" ]
        then
                echo "run ss"
                sslocal -s 代理IP -p 代理端口 -b 127.0.0.1 -l 1080 -k 密碼 -m 加密方式
        fi

        echo "set shell proxy"
        hwclock --show
        export http_proxy=http://127.0.0.1:1080
        export https_proxy=https://127.0.0.1:1080
        export http_proxy=socks://127.0.0.1:1080
        export http_proxy=sock4://127.0.0.1:1080
        export http_proxy=sock5://127.0.0.1:1080
}

stop() {
	echo "stop shell proxy"
	unset http_proxy
	unset https_proxy
}

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章