DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.

按照古月居第17讲给的代码进行测试,出现以下error.。

TypeError: cannot use a string pattern on a bytes-like object

Listening to /tf for 5.0 seconds
Done Listening
/opt/ros/noetic/lib/tf/view_frames:86: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
  v = distutils.version.StrictVersion('2.16')
b'dot - graphviz version 2.43.0 (0)\n'
Traceback (most recent call last):
  File "/opt/ros/noetic/lib/tf/view_frames", line 119, in <module>
    generate(dot_graph)
  File "/opt/ros/noetic/lib/tf/view_frames", line 89, in generate
    m = r.search(vstr)
TypeError: cannot use a string pattern on a bytes-like object

还有即将废弃的警告:distutils 版本类已被弃用。请改用 packaging.version。

查了一下,这是官方已经弃用tf了,虽然tf2是与ROS 2一起开发的,并且主要设计用于ROS 2,但它也被反向移植到了ROS 1中,以便在ROS 1环境中也能使用tf2的新特性和改进。要在ROS 1中使用tf2,需要确保已经安装了tf2tf2_ros包。

sudo apt install ros-noetic-tf2-tools
​
sudo apt-get install ros-noetic-tf2 ros-noetic-tf2-ros
roslaunch turtle_tf2 turtle_tf2_demo.launch
​
rosrun turtlesim turtle_teleop_key 
​​
rosrun tf2_tools view_frames.py

最后在你/home/your_name下就能看到生成的frames.pdf了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值