如标题所示,当我们想在OMPL库自定义算法时,总会出现出现各种各样的问题,具体的如何自定义算法自己搜索就可以找到,这个帖子我只是想解决一个问题。 如下图所示,在配置好自定义算法个步骤后,进行sudo catkin build居然出现了下面的问题,系统提示我们自定的算法PPRRT算法居然 /usr/bin/ld: /home/tza/tza_ompl/devel/.private/moveit_planners_ompl/lib/libmoveit_ompl_interface.so.1.1.8: undefined reference to `ompl::geometric::PPRRT::PPRRT(std::shared_ptr<ompl::base::SpaceInformation> const&)' 那么解决办法分为以下几个步骤 第一步到/home/tza/tza_ompl/devel/.private/moveit_planners_ompl/lib/这个目录里,将文件libmoveit_ompl_interface.so.1.1.8给删除掉。如果在devel文件夹下找不到.private文件就按Ctrl+H 就可以看到了。 第二步 到/opt/ros/noetic/lib/x86_64-linux-gnu目录下,将libompl.so libompl.so.16 和 libompl.so.1.5.2复制到/opt/ros/noetic/lib目录下,具体操作如下所示。 好了,废话不多说,上结果。直接sudo catkin build。 最后我们source一下环境,再roslaunch一下moveit官方库提供的机器人demo,看看结果吧。