鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    ROS2用jupyter时在import rclpy时的报错

    已定时 已固定 已锁定 已移动
    ROS 2相关问题
    ros2 ros一键安装 jupyter import rclpy出错 importerror
    3
    3
    355
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 17838663801
      Delusional_
      最后由 编辑

      ImportError Traceback (most recent call last)
      Cell In[1], line 1
      ----> 1 import rclpy
      2 from rclpy.node import Node

      File /opt/ros/jazzy/lib/python3.12/site-packages/rclpy/init.py:49
      47 from rclpy.context import Context
      48 from rclpy.parameter import Parameter
      ---> 49 from rclpy.signals import install_signal_handlers
      50 from rclpy.signals import SignalHandlerOptions
      51 from rclpy.signals import uninstall_signal_handlers

      File /opt/ros/jazzy/lib/python3.12/site-packages/rclpy/signals.py:15
      1 # Copyright 2019 Open Source Robotics Foundation, Inc.
      2 #
      3 # Licensed under the Apache License, Version 2.0 (the "License");
      (...)
      12 # See the License for the specific language governing permissions and
      13 # limitations under the License.
      ---> 15 from rclpy.exceptions import InvalidHandle
      16 from rclpy.guard_condition import GuardCondition
      17 from rclpy.impl.implementation_singleton import rclpy_implementation as _rclpy

      File /opt/ros/jazzy/lib/python3.12/site-packages/rclpy/exceptions.py:16
      ...
      89 level += 1
      ---> 90 return _bootstrap._gcd_import(name[level:], package, level)

      ImportError: /home/huang/miniconda3/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /opt/ros/jazzy/lib/python3.12/site-packages/rclpy/_rclpy_pybind11.cpython-312-aarch64-linux-gnu.so)
      The C extension '/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/_rclpy_pybind11.cpython-312-aarch64-linux-gnu.so' failed to be imported while being present on the system. Please refer to 'https://docs.ros.org/en/jazzy/How-To-Guides/Installation-Troubleshooting.html#import-failing-even-with-library-present-on-the-system' for possible solutions
      Output is truncated. View as a scrollable element or open in a text editor. Adjust cell output settings...

      因为我用的时vscode中的jupyter编辑,当我输入import rclpy和from rclpy.node import Node点击Ctrl + ENTER运行后便报错如上,我的设备用的是树莓派5,内置ubuntu24.04LTS,装的是ROS2的noble,花了好久在网上搜索相关资料,我看了系统里也有GLIBCXX_3.4.30,至今无法解决,有没有遇到相同情况的铁铁分享一下资料!万分感谢!

      小鱼小 1 条回复 最后回复 回复 引用 0
      • 小伊小
        机器人小伊
        最后由 编辑

        错误信息提示 /home/huang/miniconda3/bin/../lib/libstdc++.so.6: version 'GLIBCXX_3.4.30' not found,这表明你的Python环境(很可能是Miniconda环境)中的libstdc++库版本与ROS 2中rclpy所需的版本不兼容。

        树莓派上的Ubuntu 24.04 LTS默认提供的libstdc++库可能并不包括GLIBCXX_3.4.30这个版本,而这个版本是编译ROS 2中某些组件(比如rclpy)时需要的。

        这里有几个可能的解决步骤:

        1. 确保ROS 2环境正确设置:
          确保你已经按照ROS 2的官方安装指南正确安装了ROS 2,并且你的环境变量(如PATH和LD_LIBRARY_PATH)已经设置正确,以便它们指向了ROS 2的安装目录。

        2. 使用系统Python而非Miniconda:
          你可能需要避免在Miniconda环境中运行ROS 2相关的代码,因为Miniconda可能会提供自己的libstdc++版本,这个版本可能与ROS 2不兼容。尝试使用系统Python环境运行你的代码。

        3. 更新或安装缺失的libstdc++版本:
          如果可能,尝试更新你的libstdc++库到一个包含GLIBCXX_3.4.30的版本。你可以通过添加更多的PPA或者从源代码编译GCC来做到这一点。

        4. 使用虚拟环境:
          如果你需要使用特定的Python包或版本,你可以考虑使用venv或pyenv来创建一个干净的虚拟环境,并在这个环境中安装ROS 2的Python包。

        5. 检查Jupyter配置:
          确保Jupyter是在正确的Python环境中启动的,这个环境应该与ROS 2兼容。你可能需要在Jupyter的kernel配置中指定正确的Python解释器。

        6. 检查ROS 2版本:
          确保你安装的ROS 2版本(你提到的是noble)与你的树莓派和Ubuntu版本兼容。如果noble是针对更高版本的Ubuntu或者不同的硬件架构编译的,那么它可能不兼容。

        7. 查看ROS社区和论坛:
          ROS社区和论坛中可能有人遇到了类似的问题,并分享了解决方案。查看这些资源可能会提供额外的帮助。

        由于这涉及到具体的系统配置和环境设置,可能需要一些试验和调整才能找到最适合你情况的解决方案。如果以上步骤都不能解决问题,你可能需要更详细地检查你的系统配置,或者考虑在支持ROS 2的官方硬件和操作系统上部署你的项目。


        以上为生成回答,仅供参考~

        我是小伊,已接入ChatGpt,所有回复,仅供参考~

        1 条回复 最后回复 回复 引用 0
        • 小鱼小
          小鱼 技术大佬 @1783866380
          最后由 编辑

          @1783866380 https://fishros.org.cn/forum/topic/1581/动手学ros2第六章基础篇3-2用import来导入出错

          新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

          1 条回复 最后回复 回复 引用 0
          • 第一个帖子
            最后一个帖子
          皖ICP备16016415号-7
          Powered by NodeBB | 鱼香ROS