ubuntu+ros新手笔记(一)

系统ubuntu20.04
ros noetic + humble(源码安装失败,放弃源码安装了)

1. ubuntu安装vcs

拉取autoware源码的时候需要用到命令

vcs import src < autoware.ai.repos

但是ubuntu默认没有安装vcs工具(zsh: command not found: vcs)
应使用以下命令安装:

sudo apt-get install python3-vcstool

不是apt-get install vcs(笑)

原文链接:[tip] ubuntu安装vcs命令 (autoware)

2. ros2:未找到命令

或者:

E: 无法定位软件包 ros-humble-desktop

ros2命令用不了,用source命令运行bash文件还是不行,讲道理source了之后在当前终端下是可以运行ros2命令的,在其他没有source的终端才会出现“ros2:未找到命令”的情况。为什么source了也不行呢??
ps. rosversion -d是可以查看ros安装版本的,输出了noetic,如下:
在这里插入图片描述在不同ROS版本采用的Python里看到了这句:

1、noetic是ROS1的终极版本,建议后续使用ROS2版本,需要注意:noetic之前的版本默认使用的是Python2,noetic之后的ROS则使用Python3

啊?!所以noetic是ros1的版本啊,怪不得用不了ros2的命令呢 -_-||

目前humble是ros的长期支持版本(LTS)版,打算安装humble了,不知道noetic和humble两个版本共存会不会出问题

安装教程参照【古月居】古月·ROS2入门21讲
↑↑↑
× 错!古月居的这个教程是从ubuntu22.04版本安装的humble,安装过程较为简单,但是对于我现在用的ubuntu20.04系统,humble仅支持源码编译,这种安装过程参照大佬的教程:ros2humble源码编译 ubuntu系统。
前面都没有问题,直到第六步、在工作空间中编译源码colcon build --symlink-install这一步,必须要用***,所以我又装了一个***的linux版本,安装过程参照另一大佬教程linux ***最速安装使用,注意装完***、重启后再次运行colcon build --symlink-install才有效!!

2.0 放弃ubuntu20.04+ros2 humble源码安装了!!

源码编译一共有346个包,我装到大概第140多个就实在是装不了了,报错例子如下。这样一个包一个包的装下去也不是办法,所以我决定,在一个干净的环境里开始我的ros之路:重装系统ubuntu22.04 + ros2(humble版本),参见 ubuntu+ros新手笔记(二)。

---
Failed   <<< python_orocos_kdl_vendor [2.23s, exited with code 1]
Aborted  <<< qt_gui_app [0.02s]                                              
Aborted  <<< rviz_rendering_tests [0.36s]
Aborted  <<< launch_testing [1.31s]                                          
Aborted  <<< rosidl_cmake [0.72s]                                

Summary: 123 packages finished [27.3s]
  1 package failed: python_orocos_kdl_vendor
  4 packages aborted: launch_testing qt_gui_app rosidl_cmake rviz_rendering_tests
  1 package had stderr output: python_orocos_kdl_vendor
  218 packages not processed
一个报错:
--- stderr: rosidl_generator_c                                                             
Traceback (most recent call last):
  File "/home/xj/ros2_humble/src/ros2/rosidl/rosidl_generator_c/bin/rosidl_generator_c", line 8, in <module>
    from rosidl_generator_c import generate_c
ModuleNotFoundError: No module named 'rosidl_generator_c'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/xj/ros2_humble/src/ros2/rosidl/rosidl_generator_c/bin/rosidl_generator_c", line 20, in <module>
    rosidl_generator_c = loader.load_module()
  File "<frozen importlib._bootstrap_external>", line 462, in _check_name_wrapper
  File "<frozen importlib._bootstrap_external>", line 962, in load_module
  File "<frozen importlib._bootstrap_external>", line 787, in load_module
  File "<frozen importlib._bootstrap>", line 265, in _load_module_shim
  File "<frozen importlib._bootstrap>", line 702, in _load
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/xj/ros2_humble/src/ros2/rosidl/rosidl_generator_c/rosidl_generator_c/__init__.py", line 15, in <module>
    from rosidl_cmake import convert_camel_case_to_lower_case_underscore
  File "/home/xj/ros2_humble/install/rosidl_cmake/lib/python3.8/site-packages/rosidl_cmake/__init__.py", line 24, in <module>
    from rosidl_parser.parser import parse_idl_file
  File "/home/xj/ros2_humble/install/rosidl_parser/lib/python3.8/site-packages/rosidl_parser/parser.py", line 20, in <module>
    from lark import Lark
ModuleNotFoundError: No module named 'lark'
make[2]: *** [CMakeFiles/rosidl_generator_c_interfaces__rosidl_generator_c.dir/build.make:86:rosidl_generator_c/rosidl_generator_c/msg/arrays.h] 错误 1
make[1]: *** [CMakeFiles/Makefile2:225:CMakeFiles/rosidl_generator_c_interfaces__rosidl_generator_c.dir/all] 错误 2
make: *** [Makefile:141:all] 错误 2
---
Failed   <<< rosidl_generator_c [4.88s, exited with code 2]

3. Ubuntu 截屏(或截图)的方式

如下:在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/936367.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

蛋白研究新热点:AI 全方位剖析 DHA 与 Ferrostatin - 1 的作用密码

胰腺癌是一种非常棘手的癌症&#xff0c;传统化疗药物往往对它收效甚微&#xff0c;很难提高患者的生存率。不过&#xff0c;研究人员发现了一种可能的新治疗方向 —— 利用双氢青蒿素&#xff08;DHA&#xff09;诱导癌细胞发生铁死亡。 下面将以Dihydroartemisinin induces …

大数据挖掘建模平台案例分享

大数据挖掘建模平台是由泰迪自主研发&#xff0c;面向企业级用户的大数据挖掘建模平台。平台采用可视化操作方式&#xff0c;通过丰富内置算法&#xff0c;帮助用户快速、一站式地进行数据分析及挖掘建模&#xff0c;可应用于处理海量数据、高复杂性的数据挖掘任务&#xff0c;…

docker安装、升级、以及sudo dockerd --debug查看启动失败的问题

1、docker安装包tar下载地址 Index of linux/static/stable/x86_64/ 2、下载tgz文件并解压 tar -zxvf docker-24.0.8.tgz 解压后docker文件夹下位docker相关文件 3、将老版本docker相关文件&#xff0c;备份 将 /usr/bin/docker下docker相关的文件&#xff0c;mv到备份目录…

远程桌面防护的几种方式及优缺点分析

远程桌面登录是管理服务器最主要的方式&#xff0c;于是很多不法分子打起了远程桌面的歪心思。他们采用暴力破解或撞库的方式破解系统密码&#xff0c;悄悄潜入服务器而管理员不自知。 同时远程桌面服务中的远程代码执行漏洞也严重威胁着服务器的安全&#xff0c;攻击者可以利…

【电子通识】电流倒灌为什么需要注意?

电流倒灌是一个很常见的问题,以“IO电流倒灌”为关键词在百度上进行搜索,可以找到很多相关案例。 电流倒灌问题在5V电平的单片机时代几乎不会发生,主要是因为5V单片的IO耐压值高,单片机内部结构对IO保护设计很好。 到了3.3V单片机时代,这类问题有一定的偶发性,但…

Linux系统编程——进程间通信

目录 一、前言 二、进程间通信的目的 三、进程通信的方法 四、管道 通信 1、进程如何通信 2、管道概念 3、匿名管道 1&#xff09;理解 2&#xff09;匿名管道的创建 3&#xff09;匿名管道用途——控制进程 4&#xff09;匿名管道对多个进程的控制 5&#xff09;总…

【中工开发者】鸿蒙商城实战项目(启动页和引导页)

创建一个空项目 先创建一个新的项目选择第一个&#xff0c;然后点击finish 接下来为项目写一个名字&#xff0c;然后点击finish。 把index页面的代码改成下面代码块的代码&#xff0c;就能产生下面的效果 Entry Component struct Index {build() {Column(){Blank()Column(){…

Hadoop其一,介绍本地模式,伪分布模式和全分布搭建

目录 一、Hadoop介绍 二、HDFS的本地模式 三、伪分布模式 四、Hdfs中的shell命令 五、全分布搭建 六、使用Java代码操作HDFS 1、环境准备 2、单元测试&#xff08;Junit&#xff09;​编辑 一、Hadoop介绍 Hadoop 分为三部分 &#xff1a; Common、HDFS 、Yarn、MapRe…

【Linux-ubuntu通过USB传输程序点亮LED灯】

Linux-ubuntu通过USB传输程序点亮LED灯 一,初始化GPIO配置1.使能时钟2.其他寄存器配置 二&#xff0c;程序编译三&#xff0c;USB传输程序 一,初始化GPIO配置 1.使能时钟 使能就是一个控制信号&#xff0c;用于决定时钟信号是否能够有效的传递或者被使用&#xff0c;就像一个…

django——admin后台管理1

一、admin后台管理 访问url进入&#xff1a; http://127.0.0.1:8000/admin ​ 创建超级管理用户 终端输入以下命令&#xff1a; python manage.py createsuperuser (py36_pingping) E:\django学习\day03-django入门\demo>python manage.py createsuperuser Username: mo…

Jenkins与SonarQube持续集成搭建及坑位详解

Jenkins和SonarQube都是软件开发过程中常用的工具,它们在代码管理、构建、测试和质量管理方面发挥着重要作用。以下是关于Jenkins与SonarQube的作用及整合步骤环境搭建的详细解释: 一、Jenkins与SonarQube的作用 Jenkins: Jenkins是一个开源的持续集成和交付工具,它可以帮…

Docker安装MySQL5.5版本数据库(图文教程)

本章教程,介绍如何使用Docker安装MySQL低版本5.5版本的数据库。 一、拉取镜像 docker pull mysql:5.5二、启动容器 docker run -d --name mysql5.5 --restart=always

Qt实现自定义行编辑器

引言 开发环境项目结构ui界面设计示例代码运行效果总结qt中原有的行编辑器无法满足当前的需要,所以需要自定义行编辑器。 通过上下按键切换到不同的行编辑器,在选中的行编辑器中输入数字,编辑器呈现边框,编辑后按下回车键保存之前编辑的数值,没有按下回车键直接切换上下键…

贺!伊克罗德携手九科信息共同发布RPA+AI智能机器人解决方案「ECRobot」

12月12日&#xff0c;伊克罗德信息在上海举办 “创见AI&#xff0c;迈进智能化未来——科技赋能零售电商”活动&#xff0c;与九科信息、亚马逊云科技共同探讨与分享融合生成式AI技术和智能自动化&#xff08;RPA&#xff0c;Robotic Process Automation&#xff09;在电商零售…

AI技术架构:从基础设施到应用

人工智能&#xff08;AI&#xff09;的发展&#xff0c;正以前所未有的速度重塑我们的世界。了解AI技术架构&#xff0c;不仅能帮助我们看懂 AI 的底层逻辑&#xff0c;还能掌握其对各行业变革的潜力与方向。 一、基础设施层&#xff1a;AI 技术的坚实地基 基础设施层是 AI 技…

【每日刷题】Day169

【每日刷题】Day169 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 718. 最长重复子数组 - 力扣&#xff08;LeetCode&#xff09; 2. 2269. 找到一个数字的 K 美丽值…

国科大智能设备安全-APK逆向分析实验

APK逆向分析实验 使用APK常用逆向分析工具&#xff0c;对提供的移动应用程序APK文件进行逆向分析&#xff0c;提交逆向后代码和分析报告。具体任务如下&#xff1a; 任务一&#xff1a;安装并熟悉Apktool、Jadx等APK常用逆向工具的使用方法&#xff0c;对提供的Facebook Updat…

医学图像分割数据集腹部肝脏多器官图像分割数据集labelme格式860张10类别

数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数)&#xff1a;860 标注数量(json文件个数)&#xff1a;860 标注类别数&#xff1a;10 标注类别名称:["liver","stomach","o…

EasyExcel设置表头上面的那种大标题(前端传递来的大标题)

1、首先得先引用easyExcel的版本依赖&#xff0c;我那 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.6</version> </dependency> 2、然后得弄直接的实体类&#xff0c;&…

数据仓库-集群管理

主要介绍操作类问题中的集群管理问题。 无法成功创建数据仓库集群时怎么处理&#xff1f; 请检查用户账户余额是否少于100元&#xff0c;是否已经没有配额创建新的数据仓库集群&#xff0c;以及是否存在网络问题。 如账户余额、配额、网络均未发现问题&#xff0c;请联系客户…