ROS-kinetic安裝
前言:雖然ROS已經更新到了Melodic 版本(2018.5.23),因為是新手學習肯定會遇到各種問題,選一個舊一點使用比較多的容易找到問題的答案,所以選擇了 Ubuntu16.04(這個在2018.1月份有過一次更新)。
一,設置源
? ? 我在安裝的時候遇到較多的這呀那呀的問題大部分是網絡上找不到源的問題,這里先設置好。
? ?1.備份系統自帶的源
????????sudo cp /etc/apt/sources.list?/etc/apt/sources.list.bak?
? ? 2.編輯源文件,將里面的內容全刪除,寫入如下內容(假如有更好的可以添加)
? ??????deb http://archive.ubuntu.com/ubuntu xenial main universe restricted multiverse
????????deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted multiverse universe
????????deb http://archive.ubuntu.com/ubuntu xenial-updates main restricted multiverse universe
????????deb http://packages.ros.org/ros-shadow-fixed/ubuntu xenial main
? ? 3.更新生效
? ? ? ? sudo apt-get update
---- 下面開始基本上可以參考官網的教程了 ----
二,開始安裝ROS
1. 添加 ros 源(這步我在上一步已經添加了所以這里不需要再添加,這里只是照搬官網的教程)
? ??sudo?sh?-c?'echo?"deb?http://packages.ros.org/ros/ubuntu?$(lsb_release?-sc)?main"?>?/etc/apt/sources.list.d/ros-latest.list'?
2.設置key
? ??sudo?apt-key?adv?--keyserver?hkp://ha.pool.sks-keyservers.net:80?--recv-key?421C365BD9FF1F717815A3895523BAEEB01FA116??
-- 如果無法連接服務器,請將上面的 hkp:// .......:80 改為?hkp://pgp.mit.edu:80或者hkp://keyserver.ubuntu.com:80 試試
? ? 3.再次更新package
? ? ????sudo apt-get update
? ? 4.這里安裝桌面完整版,當然也可以按個別包來安裝,可參考官網
????????sudo?apt-get?install?ros-kinetic-desktop-full
? ? ? ? --- 如果這里有錯誤請參考后面的錯誤處理
? ? 5.查看可用安裝包
? ? ? ? apt-cache?search?ros-kinetic??
? ? 6.初始化rosdep (使用之前必須初始化)
????????sudo?rosdep?init?
? ??????rosdep?update?
7.配置環境
? ??echo?"source?/opt/ros/kinetic/setup.bash"?>>?~/.bashrc?
????source?~/.bashrc??
8.安裝building package?
? ??sudo?apt-get?install?python-rosinstall?python-rosinstall-generator?python-wstool?build-essential?
?9.測試 (打開Termial,輸入以下命令,初始化ROS環境:)
????roscore
? ? (打開新的Termial,輸入以下命令,彈出一個小烏龜窗口:)
????rosrun?turtlesim?turtlesim_node?
? ? (打開新的Termial,輸入以下命令,可以在Termial中通過方向鍵控制小烏龜的移動:)
????rosrun?turtlesim?turtle_teleop_key?? ??
? ? (打開新的Termial,輸入以下命令,彈出新的窗口查看ROS節點信息:)
????rosrun?rqt_graph?rqt_graph??
------------------------- 錯誤處理 -----------------
錯誤1:rosdep init Error? 或 rosdep update Error?
錯誤內容:
????ERROR: default sources list file already exists:
????etc/ros/rosdep/sources.list.d/20-default.list
????Please delete if you wish to re-initialize
? ? 處理:?
????????sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
????????sudo apt-get update
????????sudo rosdep init
? ??????rosdep update
錯誤內容:
? ??reading in sources list data from /etc/ros/rosdep/sources.list.d Hit ????https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml Hit ????https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml ERROR: unable to process source ????[https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml]: ????(https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml)
????then you can execute the following command:
? ? 處理:(同上處理過程)