日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

Ubuntu 18.04安装ROS 2

發布時間:2023/12/15 Ubuntu 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu 18.04安装ROS 2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ROS 2 安裝手冊和踩過的坑

  • 官方流程
    • 系統要求
    • 系統設置
      • 更換Ubuntu 清華源
      • 設置語言區域
      • 增加ROS 2 apt軟件倉庫
      • 安裝開發工具和ROS工具
    • 獲取ROS 2代碼
    • 使用rosdep安裝依賴
    • 在workspace中編譯代碼
      • 編譯代碼
    • 環境配置
    • 驗證樣例
  • 參考

本篇記錄一下在Ubuntu 18.04下安裝ROS 2 Eloquent Elusor的過程,由于ROS 2首選的系統就是Ubuntu18.04,不過在國內的安裝過程里面確實很多坑,記錄下來幫助大家避坑。

官方流程

https://index.ros.org/doc/ros2/Installation/Eloquent/Linux-Development-Setup/

系統要求

按照官方,要求是
Ubuntu Linux - Bionic Beaver (18.04) 64-bit
這個就不贅述了

系統設置

更換Ubuntu 清華源

由于國內訪問Ubuntu默認的軟件源非常慢,所以安裝后優先更新為國內的鏡像源
Ubuntu 的軟件源配置文件是 /etc/apt/sources.list。將系統自帶的該文件做個備份,將該文件替換為下面內容,即可使用 清華的軟件源鏡像。

# 默認注釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消注釋 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse# 預發布軟件源,不建議啟用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

注意:
清華源鏡像僅包含 32/64 位 x86 架構處理器的軟件包,在 ARM(arm64, armhf)、PowerPC(ppc64el)、RISC-V(riscv64) 和 S390x 等架構的設備上(對應官方源為ports.ubuntu.com)請使用 ubuntu-ports 鏡像。

設置完軟件源,可以大大地加速我們的apt更新安裝速度。

設置語言區域

官方要求是需要確認支持UTF-8,雖然說起來似乎不一定需要,不過確認一下即可

locale # check for UTF-8sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8locale # verify settings

增加ROS 2 apt軟件倉庫

我們需要將我們的ROS2 apt軟件倉庫加入系統。
首先要驗證我們的GPG key

sudo apt update && sudo apt install curl gnupg2 lsb-release curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

將倉庫加入我們的軟件源

sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'

注意:
這里如果直接執行的話,會遇到raw.githubusercontent.com的DNS污染問題。

解決方法:

  • 通過IPAddress.com,可以查到raw.githubusercontent.com的真實IP地址為 .*..

  • 通過sudo vi /etc/hosts
    在hosts文件最后加入IP和域名的綁定即可解決。

  • ***.***.**.*** raw.githubusercontent.com

    安裝開發工具和ROS工具

    sudo apt update && sudo apt install -y \build-essential \cmake \git \python3-colcon-common-extensions \python3-pip \python-rosdep \python3-vcstool \wget # install some pip packages needed for testing python3 -m pip install -U \argcomplete \flake8 \flake8-blind-except \flake8-builtins \flake8-class-newline \flake8-comprehensions \flake8-deprecated \flake8-docstrings \flake8-import-order \flake8-quotes \pytest-repeat \pytest-rerunfailures \pytest \pytest-cov \pytest-runner \setuptools # install Fast-RTPS dependencies sudo apt install --no-install-recommends -y \libasio-dev \libtinyxml2-dev # install Cyclone DDS dependencies sudo apt install --no-install-recommends -y \libcunit1-dev

    獲取ROS 2代碼

    創建workspace,clone ROS 2的代碼倉庫

    mkdir -p ~/ros2_eloquent/src cd ~/ros2_eloquent wget https://raw.githubusercontent.com/ros2/ros2/eloquent/ros2.repos vcs import src < ros2.repos

    使用rosdep安裝依賴

    sudo rosdep init rosdep update rosdep install --from-paths src --ignore-src --rosdistro eloquent -y --skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 rti-connext-dds-5.3.1 urdfdom_headers"

    在workspace中編譯代碼

    雖說是編譯代碼,其實編譯過程中還有不少需要下載的情況,個人就在 rviz_ogre_vendor的編譯中遇到了很久的下載錯誤。大家可以想辦法在下載方面采用一些方法。

    編譯代碼

    cd ~/ros2_eloquent/ colcon build --symlink-install

    環境配置

    . ~/ros2_eloquent/install/setup.bash

    驗證樣例

    在一個終端(A)里,運行配置,啟動C++的talker

    . ~/ros2_eloquent/install/local_setup.bash ros2 run demo_nodes_cpp talker

    在另一個終端(B)里,運行配置,啟動Python的listener

    . ~/ros2_eloquent/install/local_setup.bash ros2 run demo_nodes_py listener

    終端A中顯示

    HP-ProDesk-680-G1-TWR:~/ros2_eloquent$ ros2 run demo_nodes_cpp talker [INFO] [talker]: Publishing: 'Hello World: 1' [INFO] [talker]: Publishing: 'Hello World: 2' [INFO] [talker]: Publishing: 'Hello World: 3' [INFO] [talker]: Publishing: 'Hello World: 4' [INFO] [talker]: Publishing: 'Hello World: 5' [INFO] [talker]: Publishing: 'Hello World: 6' [INFO] [talker]: Publishing: 'Hello World: 7' [INFO] [talker]: Publishing: 'Hello World: 8' [INFO] [talker]: Publishing: 'Hello World: 9' [INFO] [talker]: Publishing: 'Hello World: 10' [INFO] [talker]: Publishing: 'Hello World: 11' [INFO] [talker]: Publishing: 'Hello World: 12' [INFO] [talker]: Publishing: 'Hello World: 13' [INFO] [talker]: Publishing: 'Hello World: 14' [INFO] [talker]: Publishing: 'Hello World: 15'

    終端B中顯示

    HP-ProDesk-680-G1-TWR:~/ros2_eloquent$ ros2 run demo_nodes_py listener [INFO] [listener]: I heard: [Hello World: 1] [INFO] [listener]: I heard: [Hello World: 2] [INFO] [listener]: I heard: [Hello World: 3] [INFO] [listener]: I heard: [Hello World: 4] [INFO] [listener]: I heard: [Hello World: 5] [INFO] [listener]: I heard: [Hello World: 6] [INFO] [listener]: I heard: [Hello World: 7] [INFO] [listener]: I heard: [Hello World: 8] [INFO] [listener]: I heard: [Hello World: 9] [INFO] [listener]: I heard: [Hello World: 10] [INFO] [listener]: I heard: [Hello World: 11] [INFO] [listener]: I heard: [Hello World: 12] [INFO] [listener]: I heard: [Hello World: 13] [INFO] [listener]: I heard: [Hello World: 14] [INFO] [listener]: I heard: [Hello World: 15]

    大功告成~~~

    參考

    • https://index.ros.org/doc/ros2/Installation/Eloquent/Linux-Development-Setup/
    • https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
    • https://alanlee.fun/2018/05/18/ubuntu-ssr/
    • https://wylu.me/posts/eed37a90/

    總結

    以上是生活随笔為你收集整理的Ubuntu 18.04安装ROS 2的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。