ros2--rosdep

教程

英文官网 

rosdepc

ros依赖的安装工具。

从功能包的package.xml中获取功能包的依赖,然后下载安装;

使用

rosdep的安装

1,安装pip

sudo apt install python3-pip

2,使用pip安装rosdep

安装官方的rosdep:

sudo pip install rosdep   

报错使用:sudo pip3 install rosdep   

安装国内版本的rosdepc:

sudo pip install rosdepc

rosdep首次使用初始化

sudo rosdep init && rosdep update

这将初始化 rosdep 并更新本地缓存的 rosdistro 索引。

rosdepc安装功能包依赖项

指令:

rosdepc install -i --from-paths src --rosdistro humble -y

-i:

-i, --ignore-packages-from-source, --ignore-src`:指定此选项后,`rosdep` 工具在执行以下(check,install,keys)命令时会忽略在 ROS_PACKAGE_PATH、AMENT_PREFIX_PATH,以及 `--from-paths` 选项所指定的路径中找到的 `catkin` 或 `ament` 包:

- `check` 命令:检查依赖项是否已经安装。

- `install` 命令:安装依赖项。

- `keys` 命令:列出所有可用的 ROS 软件包键(key)。

`rosdep` 是 ROS 工具集中的一个用于管理 ROS 软件包依赖项的工具,可以检查、安装、列出依赖项和相关键等。当使用 `rosdep` 安装 ROS 软件包时,它会自动下载并安装所有必需的依赖项,从而确保所需的所有软件包和库都可用,可以正确运行 ROS 节点。然而,在从源代码编译 ROS 软件包时,有时需要排除已经包含在 ROS_PACKAGE_PATH、AMENT_PREFIX_PATH 中的软件包,以避免冲突发生。

这时候就可以使用 `-i, --ignore-packages-from-source, --ignore-src` 选项,将 `catkin` 或 `ament` 包从依赖项列表中排除,从而避免冲突问题。

--from-paths

指定一个目录,rosdepc需要到这个目录里寻找所有的功能包,这些功能包将称为rosdepc检测依赖项的对象。

--rosdistro:

在使用 `rosdep` 命令安装某个软件包时,可以通过 `--rosdistro` 选项来指定使用的 ROS 版本,从而确保安装适用于该版本的依赖项。这里指定的ros版本为humble。

package.xml

我们创建一个包的时候,这个包目录下会存在这个xml文件,这个文件的作用是什么?

文件中的依赖项通常称为“rosdep 密钥”。 这些依赖项由包的创建者手动填充到文件中,并且应该是它所需的任何非内置库和包的详尽列表。

rosdep工作原理

rosdep将检查其路径中的文件或特定包,并找到存储在其中的 ROSDEP 密钥。 然后,根据中心索引交叉引用这些键,以在各种包管理器中查找适当的 ROS 包或软件库。 最后,一旦找到软件包,它们就会被安装并准备就绪!

  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值