网站建设与管理课程设计论文,网络游戏动漫设计专业,五十家装修公司官网,wordpress重新排列文章id目录 1 问题背景2 问题探索3 问题解决4 告别Bug 1 问题背景 环境#xff1a; ROS2 HumbleUbuntu22.04 现象#xff1a;运行colcon build后由cpp编译生成的python导出库(如自定义消息、服务等)#xff0c;其版本与由python setup.py安装的python库版本不一致#xff0c;导致… 目录 1 问题背景2 问题探索3 问题解决4 告别Bug 1 问题背景 环境 ROS2 HumbleUbuntu22.04 现象运行colcon build后由cpp编译生成的python导出库(如自定义消息、服务等)其版本与由python setup.py安装的python库版本不一致导致诸如 rosidl_generator_py.import_type_support_impl.UnsupportedTypeSupport: Could not import rosidl_typesupport_c for package msg_lab_py等问题 2 问题探索
检查发现本地存在两个不同版本的python解释器分别对应出现问题的版本号3.10和3.11这表明conda虚拟环境的引入将导致colcon build进行构建和安装时CMake使用的python解释器版本与python setup.py使用的版本不同。 因此解决问题的核心是使用同一个环境的python解释器。
首先卸载全局的colcon编译选项避免编译过程中错选
sudo apt remove python3-colcon-*接着创建虚拟环境原理可看Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)
conda create -n ros2 python3.10并切换到虚拟环境
conda activate ros2创建后如下所示 在该虚拟环境中安装colcon编译依赖项
pip install -U colcon-common-extensions以及其他依赖项
pip install catkin_pkg numpy lark setuptools58.2.0此时可能还会出现问题 ImportError: /home/winter/anaconda3/envs/ros2/bin/../lib/libstdc.so.6: version GLIBCXX_3.4.30 not found (required by /opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/_rclpy_pybind11.cpython-310-x86_64-linux-gnu.so)
解决方法是安装gcc
conda install -c conda-forge gcc12.1.0至此已经可以成功编译 3 问题解决
总结一下修复的流程
创建虚拟环境conda create -n ros2 python3.10切换到虚拟环境conda activate ros2安装colcon构建系统pip install -U colcon-common-extensions安装其他依赖项pip install catkin_pkg numpy lark setuptools58.2.0
conda install -c conda-forge gcc12.1.04 告别Bug
本文收录于《告别Bug》专栏该专栏记录人工智能领域中各类Bug以备复查文章形式为问题背景 问题探索 问题解决订阅专栏关注博主后可通过下方名片联系我进入AI技术交流群帮忙解决问题 更多精彩专栏
《ROS从入门到精通》《Pytorch深度学习实战》《机器学习强基计划》《运动规划实战精讲》… 源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系