【ros问题记录】
问题描述
ImportError: dynamic module does not define module export function (PyInit__tf2)
Traceback (most recent call last):
File "/home/mandy/ross/racecar_ws/src/Map_construction-Navigation_simulation/racecar_gazebo/scripts/XL_controller_cmd.py", line 18, in <module>
import tf
File "/opt/ros/melodic/lib/python2.7/dist-packages/tf/__init__.py", line 30, in <module>
from tf2_ros import TransformException as Exception, ConnectivityException, LookupException, ExtrapolationException
File "/opt/ros/melodic/lib/python2.7/dist-packages/tf2_ros/__init__.py", line 38, in <module>
from tf2_py import *
File "/opt/ros/melodic/lib/python2.7/dist-packages/tf2_py/__init__.py", line 38, in <module>
from ._tf2 import *
ImportError: dynamic module does not define module export function (PyInit__tf2)
方法一主要参考:但貌似这博主是官网照抄的,这里根据实际情况进行修改
方法一是整个ros工作空间都在python3下编译工作
更新:我发现这个方法一点都不好用,因为ros melodic本来就是基于python2.7设计的,换到python3运行bug太多了,比如xacro:include会出现下面的问题。ArgException 是一个 Python 异常,xacro可能是一个基于 Python 的工具,所以我思考了许久觉得这个错误可能是因为python版本不兼容,而我也不会把底层源码改到兼容……所以还是老老实实用python2.7吧……

问题分析
所以回到最初,理清楚问题是什么,
参考1,方法一参考的博主的参考
参考2,ROS Me

最低0.47元/天 解锁文章

5235

被折叠的 条评论
为什么被折叠?



