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

    《动手学Moveit2》3.安装Moveit2测试

    已定时 已固定 已锁定 已移动
    机械臂运动规划
    动手学moveit2 moveit2教程
    18
    49
    21.7k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小鱼小
      小鱼 技术大佬 @LittleMING
      最后由 小鱼 编辑

      @LittleMING 看起来是的,目前我也没办法定位出问题,建议你用一下一键安装ROS+Docker创建一个Docker下的ROS2环境,测试没问题后再想办法解决你的系统问题。

      目前看你给到的错误信息,定位不出具体问题,看不出来哪些包找不到。

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

      LittleMINGL 1 条回复 最后回复 回复 引用 0
      • LittleMINGL
        LittleMING @小鱼
        最后由 编辑

        @小鱼 你试过在双系统直接安装ros humble吗,还是一直在docker

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

          @LittleMING 我写教程就是双系统下直接装的,应该是你的一些前置操作造成的。

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

          1 条回复 最后回复 回复 引用 0
          • 阿政在路上阿
            阿政在路上
            最后由 编辑

            请问,我是在源码编译安装最后colcon build 出现了问题,在编译的过程中会卡顿然后终端就闪退了,尝试了增大内存和处理器数量,但是还是没解决,请问有其他的办法吗?

            小鱼小 1 条回复 最后回复 回复 引用 0
            • 小鱼小
              小鱼 技术大佬 @阿政在路上
              最后由 编辑

              @阿政在路上 在 Colcon编译导致系统卡死问题|CPU100% 或 内存 100% 中说:

              六核十二线程处理器,使用从哦啦从编译一个比较大的工作空间导致系统卡死。
              解决办法,限制并行使用的线程数量,比如用6个。
              colcon build --parallel-workers 6

              上面的方案在功能包多的空间内存还会爆掉,还有一个办法,那就是不用并行的了(亲测有效)。
              colcon build --executor sequential

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

              阿政在路上阿 2 条回复 最后回复 回复 引用 1
              • 阿政在路上阿
                阿政在路上 @小鱼
                最后由 编辑

                @小鱼 好的,谢谢您,我一会试一下

                1 条回复 最后回复 回复 引用 0
                • 阿政在路上阿
                  阿政在路上 @小鱼
                  最后由 编辑

                  @小鱼 尝试了 ,还是闪退了😵😵😵

                  小鱼小 1 条回复 最后回复 回复 引用 0
                  • 小鱼小
                    小鱼 技术大佬 @阿政在路上
                    最后由 编辑

                    @阿政在路上 你用的什么环境,系统版本,ros2版本,是否使用容器

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

                    阿政在路上阿 1 条回复 最后回复 回复 引用 0
                    • 阿政在路上阿
                      阿政在路上 @小鱼
                      最后由 编辑

                      @小鱼 Ubuntu22.04,ros是humble,没有装容器

                      小鱼小 1 条回复 最后回复 回复 引用 0
                      • 小鱼小
                        小鱼 技术大佬 @阿政在路上
                        最后由 编辑

                        @阿政在路上 虚拟机还是双系统鸭,直接闪退可真烦,你把指令后面加上一个&放后台执行试试

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

                        阿政在路上阿 11989270601 2 条回复 最后回复 回复 引用 0
                        • 阿政在路上阿
                          阿政在路上 @小鱼
                          最后由 编辑

                          @小鱼 虚拟机的

                          1 条回复 最后回复 回复 引用 0
                          • 笨笨洋笨
                            笨笨洋
                            最后由 编辑

                            虚拟机安装Ubuntu22.04系统,安装ROS2 humble,在安装Moveit2 时,编译源码colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release,最后编译结果显示:

                            1 package had stderr output: moveit_configs_utils
                            

                            这个怎么处理!error.png

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

                              @笨笨洋 这个没关系,不用管,不应影响

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

                              1 条回复 最后回复 回复 引用 0
                              • youngY young 在 中固定了该主题
                              • 吨吨炖丸子吨
                                吨吨炖丸子
                                最后由 编辑

                                鱼哥,这种问题你遇到过没

                                --- stderr: moveit_ros_planning                                            
                                In file included from /home/wadd/moveit2_ws/src/moveit2/moveit_ros/planning/kinematics_plugin_loader/include/moveit/kinematics_plugin_loader/kinematics_plugin_loader.h:42,
                                                 from /home/wadd/moveit2_ws/src/moveit2/moveit_ros/planning/kinematics_plugin_loader/src/kinematics_plugin_loader.cpp:37:
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp: In member function ‘rcl_interfaces::msg::SetParametersResult kinematics::ParamListener::update(const std::vector<rclcpp::Parameter>&)’:
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:100:59: error: ‘gt_eq’ is not a member of ‘parameter_traits’
                                  100 |             if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                      |                                                           ^~~~~
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:100:65: error: expected primary-expression before ‘double’
                                  100 |         if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                      |                                                             ^~~~~~
                                
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:107:59: error: ‘gt’ is not a member of ‘parameter_traits’
                                  107 |             if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                      |                                                           ^~
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:107:62: error: expected primary-expression before ‘double’
                                  107 |            if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                      |                                                             ^~~~~~
                                
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp: In member function ‘void kinematics::ParamListener::declare_params()’:
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:153:53: error: ‘gt_eq’ is not a member of ‘parameter_traits’
                                  153 |       if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                      |                                                     ^~~~~
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:153:59: error: expected primary-expression before ‘double’
                                  153 |       if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                      |                                                           ^~~~~~
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:159:53: error: ‘gt’ is not a member of ‘parameter_traits’
                                  159 |       if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                      |                                                     ^~
                                /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:159:56: error: expected primary-expression before ‘double’
                                  159 |       if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                      |                                                        ^~~~~~
                                gmake[2]: *** [kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/build.make:76:kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/src/kinematics_plugin_loader.cpp.o] 错误 1
                                gmake[1]: *** [CMakeFiles/Makefile2:460:kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/all] 错误 2
                                gmake[1]: *** 正在等待未完成的任务....
                                gmake: *** [Makefile:146:all] 错误 2
                                ---
                                Failed   <<< moveit_ros_planning [2min 3s, exited with code 2]
                                
                                Summary: 13 packages finished [11min 29s]
                                  1 package failed: moveit_ros_planning
                                  2 packages had stderr output: moveit_configs_utils moveit_ros_planning
                                  24 packages not processed
                                
                                
                                小鱼小 15223469361 2 条回复 最后回复 回复 引用 0
                                • 小鱼小
                                  小鱼 技术大佬 @吨吨炖丸子
                                  最后由 编辑

                                  @吨吨炖丸子 你的系统版本是?

                                  @小鱼 在 提问前必看!一定要看!必须看一下! 中说:

                                  尽量提供更多的信息

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

                                  吨吨炖丸子吨 3 条回复 最后回复 回复 引用 0
                                  • 15223469361
                                    孤缘 @吨吨炖丸子
                                    最后由 编辑

                                    @吨吨炖丸子 在 《动手学Moveit2》3.安装Moveit2 中说:

                                    鱼哥,这种问题你遇到过没

                                    --- stderr: moveit_ros_planning                                            
                                    In file included from /home/wadd/moveit2_ws/src/moveit2/moveit_ros/planning/kinematics_plugin_loader/include/moveit/kinematics_plugin_loader/kinematics_plugin_loader.h:42,
                                                     from /home/wadd/moveit2_ws/src/moveit2/moveit_ros/planning/kinematics_plugin_loader/src/kinematics_plugin_loader.cpp:37:
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp: In member function ‘rcl_interfaces::msg::SetParametersResult kinematics::ParamListener::update(const std::vector<rclcpp::Parameter>&)’:
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:100:59: error: ‘gt_eq’ is not a member of ‘parameter_traits’
                                      100 |             if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                          |                                                           ^~~~~
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:100:65: error: expected primary-expression before ‘double’
                                      100 |         if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                          |                                                             ^~~~~~
                                    
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:107:59: error: ‘gt’ is not a member of ‘parameter_traits’
                                      107 |             if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                          |                                                           ^~
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:107:62: error: expected primary-expression before ‘double’
                                      107 |            if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                          |                                                             ^~~~~~
                                    
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp: In member function ‘void kinematics::ParamListener::declare_params()’:
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:153:53: error: ‘gt_eq’ is not a member of ‘parameter_traits’
                                      153 |       if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                          |                                                     ^~~~~
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:153:59: error: expected primary-expression before ‘double’
                                      153 |       if(auto validation_result = parameter_traits::gt_eq<double>(param, 0.0);
                                          |                                                           ^~~~~~
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:159:53: error: ‘gt’ is not a member of ‘parameter_traits’
                                      159 |       if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                          |                                                     ^~
                                    /home/wadd/moveit2_ws/build/moveit_ros_planning/kinematics_plugin_loader/kinematics_parameters/include/kinematics_parameters.hpp:159:56: error: expected primary-expression before ‘double’
                                      159 |       if(auto validation_result = parameter_traits::gt<double>(param, 0.0);
                                          |                                                        ^~~~~~
                                    gmake[2]: *** [kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/build.make:76:kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/src/kinematics_plugin_loader.cpp.o] 错误 1
                                    gmake[1]: *** [CMakeFiles/Makefile2:460:kinematics_plugin_loader/CMakeFiles/moveit_kinematics_plugin_loader.dir/all] 错误 2
                                    gmake[1]: *** 正在等待未完成的任务....
                                    gmake: *** [Makefile:146:all] 错误 2
                                    ---
                                    Failed   <<< moveit_ros_planning [2min 3s, exited with code 2]
                                    
                                    Summary: 13 packages finished [11min 29s]
                                      1 package failed: moveit_ros_planning
                                      2 packages had stderr output: moveit_configs_utils moveit_ros_planning
                                      24 packages not processed
                                    
                                    

                                    我也遇到了同样的错误,我是在 ros:humble-ros-base-jammy 的官方docker容器里跑的

                                    小鱼小 10127960511 2 条回复 最后回复 回复 引用 0
                                    • 小鱼小
                                      小鱼 技术大佬 @1522346936
                                      最后由 编辑

                                      @1522346936 将Moveit源码切换到2.5.3 tag试试,应该是跟ros2api相关,你把容器里的ros2版本也更新一下

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

                                      10127960511 15223469361 空白空 KarosK 4 条回复 最后回复 回复 引用 0
                                      • 10127960511
                                        Haha @小鱼
                                        最后由 编辑

                                        @小鱼 鱼哥我也是一样的报错,可以具体说一下怎么解决吗,感谢!

                                        1 条回复 最后回复 回复 引用 0
                                        • 15223469361
                                          孤缘 @小鱼
                                          最后由 编辑

                                          @小鱼 ros2需要更新到哪个版本,最新版本不就是humble吗?

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

                                            @1522346936 相同版本但某个包的api接口不一定不变,小版本还是在更新,humble只是一个维护的大版本代称

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

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