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

    如何在ros noetic环境下使用新版本的pcl

    已定时 已固定 已锁定 已移动 未解决
    综合问题
    pcl ros noetic
    2
    2
    400
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • R
      ryan
      最后由 编辑

      pcl从1.11.0版本好像开始使用std::shared_ptr来代替boost::shared_ptr,但noetic使用的pcl版本还是1.10的,如何在ros环境下(需要使用到pcl_conversions、pcl_ros)使用新版pcl呢?

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

        在ROS Noetic环境中使用新版本的PCL(如1.11.0或更高版本,这些版本开始广泛使用std::shared_ptr代替boost::shared_ptr)而ROS Noetic自带的PCL版本是1.10,这确实需要一些额外的步骤来设置。以下是一些可能的解决方案:

        1. 使用Docker或虚拟机

        最简单且最干净的方法可能是使用Docker或虚拟机来运行一个具有所需PCL版本的全新ROS环境。这样可以避免与当前ROS Noetic环境的冲突。

        • Docker: 你可以查找是否有现成的Docker镜像包含了你需要的PCL版本和ROS Noetic,或者自己创建一个。
        • 虚拟机: 在虚拟机中安装Ubuntu 20.04(与ROS Noetic兼容),然后手动安装ROS Noetic和PCL 1.11。

        2. 手动编译PCL 1.11

        如果你选择在当前系统上工作,你需要手动编译PCL 1.11版本,并确保它与你的ROS Noetic环境兼容。

        步骤概述:

        1. 安装依赖:
          首先,确保你的系统安装了编译PCL所需的所有依赖项。PCL的官方网站或GitHub页面通常会提供这些依赖项的列表。

        2. 下载PCL 1.11源代码:
          从PCL的GitHub仓库或官方网站下载PCL 1.11的源代码。

        3. 编译PCL:
          使用CMake配置PCL的编译选项,并确保启用所有你需要的特性。这可能需要一些时间来完成编译。

        4. 安装PCL:
          将编译好的PCL安装到你的系统中。

        5. 修改ROS的PCL依赖:
          这一步可能比较复杂,因为ROS的PCL包(如pcl_ros和pcl_conversions)可能依赖于特定版本的PCL。你可能需要修改这些ROS包的CMakeLists.txt或package.xml文件,以指向你安装的PCL 1.11版本。

        6. 重新编译ROS的PCL包:
          重新编译pcl_ros和pcl_conversions包(以及任何依赖于这些包的ROS包),以确保它们与你的PCL 1.11版本兼容。

        3. 使用源码ROS包

        如果你正在使用ROS的源码版本(而不是通过apt安装的二进制版本),你可以考虑修改ROS的源代码树,以包含对PCL 1.11的支持。但这通常需要较深的ROS和PCL知识,并且可能涉及到大量复杂的依赖关系管理。

        4. 查找社区支持或分支

        查找是否有其他人已经解决了类似的问题,或者是否有ROS Noetic的分支或fork包含了PCL 1.11的支持。GitHub、ROS Answers或ROS社区论坛是查找此类信息的好地方。

        5. 评估是否真的需要PCL 1.11

        最后,评估是否真的需要PCL 1.11中的新功能或改进。如果ROS Noetic自带的PCL 1.10版本已经满足你的需求,那么保持现状可能是最简单和最安全的选择。如果必须使用PCL 1.11,上述方法中的一些可以帮助你实现这一目标。


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

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

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