【ROS教程】安裝ROS全流程及可能遇到的問題

来源:https://www.cnblogs.com/UnderTurrets/p/18385415
-Advertisement-
Play Games

@目錄1.配置Softerware & Updates2.添加軟體源3.設置key4.更新並安裝4.1 更新4.2 安裝(ros-noetic-desktop-full)4.2.1 安裝aptitude4.2.2 安裝ROS軟體包5.添加環境變數6.安裝構建依賴7.初始化和更新7.1 初始化7.1. ...


@

目錄


1.配置Softerware & Updates

  • 如圖所示配置即可

在這裡插入圖片描述

2.添加軟體源

  • 如果不添加軟體源,是無法定位軟體包的

清華源

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

3.設置key

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
  • 如果不設置key,在sudo apt update的時候會有如下問題

在這裡插入圖片描述

4.更新並安裝

4.1 更新

sudo apt update

4.2 安裝(ros-noetic-desktop-full)

  • 如果使用apt安裝,幾乎百分百會出現如下問題

在這裡插入圖片描述

  • 因此我們使用aptitude安裝

4.2.1 安裝aptitude

sudo apt install aptitude

4.2.2 安裝ROS軟體包

sudo aptitude install ros-noetic-desktop-full
  • 接下來會列出一欄未安裝的,如下圖

在這裡插入圖片描述

  • 切記,此時一定要選no
  • 然後,aptitude會給出第二個解決方案,仍然有很多未安裝的,繼續選no

在這裡插入圖片描述

  • 第三次,aptitude給出了滿意的方案,只有一個未安裝的,這時可以選yes了

在這裡插入圖片描述

5.添加環境變數

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

6.安裝構建依賴

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

7.初始化和更新

7.1 初始化

sudo rosdep init
  • 由於境外資源被屏蔽,這樣初始化幾乎百分百會失敗

在這裡插入圖片描述

7.1.1 目前可行的解決辦法:重新定位資源

  1. 修改/usr/lib/python3/dist-packages/rosdistro/__init__.py的第68行
  2. 修改/usr/lib/python3/dist-packages/rosdep2/sources_list.py的第64行
  3. 修改/usr/lib/python3/dist-packages/rosdep2/rep3的第36行
  • 修改方式:把raw.githubusercontent.com/ros/rosdistro/master替換成gitee.com/zhao-xuzuo/rosdistro/raw/master,如下圖

在這裡插入圖片描述
在這裡插入圖片描述

7.1.2 結果

sudo rosdep init
  • 如果出現以下結果,則成功

在這裡插入圖片描述

7.2 更新

rosdep update
  • 結果

在這裡插入圖片描述

本文由博客一文多發平臺 OpenWrite 發佈!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • title: 使用 Nuxt 的 showError 顯示全屏錯誤頁面 date: 2024/8/26 updated: 2024/8/26 author: cmdragon excerpt: 摘要:本文介紹Nuxt.js中的showError方法用於顯示全屏錯誤頁面,包括其參數類型及使用方式,並演 ...
  • 信息系統設計速查表需求收集功能性需求:通過用戶訪談、問卷調查和市場分析來確定系統必須實現的功能。 非功能性需求:定義性能基準(如響應時間)、安全性要求(如數據加密標準,傳輸加密)、可靠性標準(如系統的正常運行時間, MTTR)。 用戶故事:使用敏捷方法論,如Scrum,來創建和優先順序排序用戶故事。 ...
  • @目錄1.流程2.自定義發佈數據2.1 std_msgs內置類型2.2 編寫.msg文件2.3 修改package.xml文件2.3.1 完整的package.xml文件2.4 修改CMakeLists.txt文件2.4.1 修改find_package指令2.4.2 添加add_message_f ...
  • IOC與DI的理解 1.1、IoC是什麼 Ioc—Inversion of Control,即“控制反轉”,不是什麼技術,而是一種設計思想。在Java開發中,Ioc意味著將你設計好的對象交給容器控制,而不是傳統的在你的對象內部直接控制。如何理解好Ioc呢?理解好Ioc的關鍵是要明確“誰控制誰,控制什 ...
  • @目錄1.launch文件有哪些標簽2.node標簽2.1 必選屬性2.2 可選屬性2.3 可選子級標簽3.include標簽3.1 必選屬性3.2 可選屬性3.3 可選子級標簽4.remap標簽4.1 必選屬性5.param標簽5.1 必選屬性5.2 可選屬性6.rosparam標簽6.1 必選屬 ...
  • @目錄1.工作空間目錄2.載入環境變數3.打開CLion4.配置CLion5.編譯和調試軟體包 1.工作空間目錄 我們的一個工作空間目錄應該是這樣的 2.載入環境變數 先進入工作空間再載入 source ./devel/setup.bash 3.打開CLion 一定要在第二步的同一個終端下 clio ...
  • @目錄1.流程2.自定義請求和響應的數據2.1 std_msgs內置類型2.2 編寫.srv文件2.3 修改package.xml文件2.4 修改CMakeLists.txt文件2.4.1 修改find_package指令2.4.2 添加add_message_files指令2.4.3 添加gene ...
  • 所謂架構,意即系統架構,廣義上它涵蓋業務架構、運維架構、組織架構等所有系統構建場景,本文特指一般開發人員主要關註的開發架構。 關於架構的理論有很多,每個人也都有各自的理解,筆者相信很多人在實際運用中也會遇到各種各樣的問題和困惑,本文拋開教條,從一個實際項目的演化看何為架構。 項目背景 開始之前,先了 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 推薦一款基於.NET 8、WPF、Prism.DryIoc、MVVM設計模式、Blazor以及MySQL資料庫構建的企業級工作流系統的WPF客戶端框架-AIStudio.Wpf.AClient 6.0。 項目介紹 框架採用了 Prism 框架來實現 MVVM 模式,不僅簡化了 MVVM 的典型 ...
  • 先看一下效果吧: 我們直接通過改造一下原版的TreeView來實現上面這個效果 我們先創建一個普通的TreeView 代碼很簡單: <TreeView> <TreeViewItem Header="人事部"/> <TreeViewItem Header="技術部"> <TreeViewItem He ...
  • 1. 生成式 AI 簡介 https://imp.i384100.net/LXYmq3 2. Python 語言 https://imp.i384100.net/5gmXXo 3. 統計和 R https://youtu.be/ANMuuq502rE?si=hw9GT6JVzMhRvBbF 4. 數 ...
  • 本文為大家介紹下.NET解壓/壓縮zip文件。雖然解壓縮不是啥核心技術,但壓縮性能以及進度處理還是需要關註下,針對使用較多的zip開源組件驗證,給大家提供個技術選型參考 之前在《.NET WebSocket高併發通信阻塞問題 - 唐宋元明清2188 - 博客園 (cnblogs.com)》講過,團隊 ...
  • 之前寫過兩篇關於Roslyn源生成器生成源代碼的用例,今天使用Roslyn的代碼修複器CodeFixProvider實現一個cs文件頭部註釋的功能, 代碼修複器會同時涉及到CodeFixProvider和DiagnosticAnalyzer, 實現FileHeaderAnalyzer 首先我們知道修 ...
  • 在軟體行業,經常會聽到一句話“文不如表,表不如圖”說明瞭圖形在軟體應用中的重要性。同樣在WPF開發中,為了程式美觀或者業務需要,經常會用到各種個樣的圖形。今天以一些簡單的小例子,簡述WPF開發中幾何圖形(Geometry)相關內容,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 在 C# 中使用 RabbitMQ 通過簡訊發送重置後的密碼到用戶的手機號上,你可以按照以下步驟進行 1.安裝 RabbitMQ 客戶端庫 首先,確保你已經安裝了 RabbitMQ 客戶端庫。你可以通過 NuGet 包管理器來安裝: dotnet add package RabbitMQ.Clien ...
  • 1.下載 Protocol Buffers 編譯器(protoc) 前往 Protocol Buffers GitHub Releases 頁面。在 "Assets" 下找到適合您系統的壓縮文件,通常為 protoc-{version}-win32.zip 或 protoc-{version}-wi ...
  • 簡介 在現代微服務架構中,服務發現(Service Discovery)是一項關鍵功能。它允許微服務動態地找到彼此,而無需依賴硬編碼的地址。以前如果你搜 .NET Service Discovery,大概率會搜到一大堆 Eureka,Consul 等的文章。現在微軟為我們帶來了一個官方的包:Micr ...
  • ZY樹洞 前言 ZY樹洞是一個基於.NET Core開發的簡單的評論系統,主要用於大家分享自己心中的感悟、經驗、心得、想法等。 好了,不賣關子了,這個項目其實是上班無聊的時候寫的,為什麼要寫這個項目呢?因為我單純的想吐槽一下工作中的不滿而已。 項目介紹 項目很簡單,主要功能就是提供一個簡單的評論系統 ...