ROS2报错:SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other...

Posted 高精度计算机视觉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS2报错:SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other...相关的知识,希望对你有一定的参考价值。

因为一直用c++,所以对ROS+python的调试相对较少,今天碰到一个用python玩的项目,发现报错,

SetuptoolsDeprecationWarning: setup.py install is deprecated. 
Use build and pip and other standards-based tools

然后,老套路,把ros2/example拉下来,测试一下rospy,

git clone -b humble --recursive https://github.com/ros2/examples.git  src

然后colcon build走起,发现也是同样的报错;既然官方提供的源码都跑不动,那就估计是python安装包版本的问题了,python3.8.3是官方指定的,不太可能有问题。顺着这个线索,找到了这个贴子,

SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. - ROS Answers: Open Source Q&A Forum

 

在python中试了一下,不行 

>>> print(setuptools.__version__)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'setuptools' is not defined

然后,改了一点

>>> import setuptools
>>> print(setuptools.__version__)

59.6.0

那有可能是版本太新了。按照贴子里面提到的

pip install setuptools==58.2.0

问题解决。

本文结束。

ROS的 sudo rosdep init 的报错终极解决方案

ROS的 sudo rosdep init 的报错解决方案
安装ROS时sudo rosdep init指令报错:

ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

之前在安装ROS 的过程中遇到了 sudo rosdep init报错的问题,搜索了很多教程都无法解决,后来参考了文末的教程亦是无法处理,后来在尝试的过程中意识到之所以安装不成功是因为rosdep对应的安装源在国内无法直接打开,本着自己遇到的问题别人也一定会遇到的原则,坚持搜索,终于在gitee(也可在chinacode中搜索)中找到了相应的源文件,因此参考文末教程,只是在教程最终的文件修改时将原有源链接中(https://raw.github.com/ros/rosdistro/master/)替换为了chinacode中的链接:(https://gitee.com/BlicNet/rosdistro/) 再次尝试按照教程尝试时,问题得以解决,发帖纪念。

1.如果之前已经安装过其他版本ROS 系统的某个版本,按照提示删除已经存在的初始化文件即可:

sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

2.重新在/etc目录下添加内容/ros/rosdep/sources.list.d/20-default.list

cd /etc/ros/rosdep/sources.list.d
sudo gedit 20-default.list

在这里有的电脑可能会出现,mkdir无法创建该包的错误…出现该问题是因为没有相关文件的打开权限,可以用chmod命令获取权限

sudo chmod 777 /etc
  1. 重新执行上述命令打开 20-default.list文件,并将以下内容复制到其中,保存。
# os-specific listings first
yaml https://gitee.com/BlicNet/rosdistro/rosdep/osx-homebrew.yaml osx

# generic
yaml https://gitee.com/BlicNet/rosdistro/rosdep/base.yaml
yaml https://gitee.com/BlicNet/rosdistro/rosdep/python.yaml
yaml https://gitee.com/BlicNet/rosdistro/rosdep/ruby.yaml
gbpdistro https://gitee.com/BlicNet/rosdistro/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

4.在桌面打开终端执行命令:

rosdep update

问题解决,继续努力吧!

参考链接

链接: https://blog.csdn.net/qq_41058594/article/details/102970901.
链接: https://www.cnblogs.com/JuiceCat/p/12000953.html.

以上是关于ROS2报错:SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other...的主要内容,如果未能解决你的问题,请参考以下文章

关于“ROS2 Topic-Statistics-Tutorial编译出错”的思考2

ROS2学习笔记3--认识ros2节点node

ROS2学习笔记1--配置ros2环境

ROS2学习笔记6--认识ros2参数parameters

ROS2学习笔记5--认识ros2服务services

ROS2学习笔记7--认识ros2动作actions