如何安装仿人导航ROS动能Ubuntu 16.04



在安装ROS Kinetic软件包(Ubuntu 16.04(,即humanoid_dnavigation时,在执行catkin_make时会抛出错误。如果没有此软件包,catkin_make运行时不会出现错误。一切都按照指示进行https://emanual.robotis.com/docs/en/platform/op3/recovery/#op3-手动安装

[ 97%] Building CXX object humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/src/HumanoidLocalization.cpp.o
/home/user/catkin_ws/src/humanoid_navigation/humanoid_localization/src/HumanoidLocalization.cpp:23:42: fatal error: pcl/filters/uniform_sampling.h: No such file or directory
compilation terminated.
humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/build.make:62: recipe for target 'humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/src/HumanoidLocalization.cpp.o' failed
make[2]: *** [humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/src/HumanoidLocalization.cpp.o] Error 1
CMakeFiles/Makefile2:12108: recipe for target 'humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/all' failed
make[1]: *** [humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 97%] Linking CXX executable /home/user/catkin_ws/devel/lib/footstep_planner/footstep_planner_node
[ 97%] Built target footstep_planner_node
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2 -l2" failed

出现此错误后,从github安装了pclhttps://github.com/PointCloudLibrary/pcl在src中,运行catkin make,并给出错误

/home/user/catkin_ws/src/humanoid_navigation/humanoid_localization/src/HumanoidLocalization.cpp:23:42: fatal error: pcl/filters/uniform_sampling.h: No such file or directory
compilation terminated.
humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/build.make:62: recipe for target 'humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/src/HumanoidLocalization.cpp.o' failed
make[2]: *** [humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/src/HumanoidLocalization.cpp.o] Error 1
CMakeFiles/Makefile2:12108: recipe for target 'humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/all' failed
make[1]: *** [humanoid_navigation/humanoid_localization/CMakeFiles/humanoidlocalization.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

救命!

您最近是否终止/中断了任何构建?这可能是由于没有成功生成目标代码。一种方法是将build和devel文件夹的相关内容与包一起清除,然后重新构建。

更新!!!所以我复制了你的问题,并按照我的步骤解决了它们。在我的情况下,我的ros_control包和pcl有问题。不起作用。干杯

[100%] Linking CXX executable 
/home/aadi/catkin_ws/devel/lib/robot_state_publisher/state_publisher
[100%] Built target joint_state_listener
[100%] Built target state_publisher
[100%] Built target robot_state_publisher
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

问题是在PCL 1.7.2中,UniformSampling位于"关键点";模块,并且在1.8.0中,它已被移动到";过滤器";单元

请检查您的PCL版本

好的,我有一个可行的解决方案:

nano /home/<user>/catkin_ws/src/humanoid_navigation/humanoid_localization/src/HumanoidLocalization.cpp

并更改为以下内容:

//#include <pcl/filters/uniform_sampling.h>
#include <pcl/keypoints/uniform_sampling.h>

然后使用cd ~/catkin_ws && catkin_make运行catkin_make。

它现在应该可以正常工作,没有任何错误。

您可以尝试以下

cd ~/catkin_ws/src
wget https://github.com/PointCloudLibrary/pcl/archive/refs/tags/pcl-1.8.1.zip
unzip pcl-1.8.1.zip
cd pcl-pcl-1.8.1
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make -j4
sudo make install -j4
cd ~/catkin_ws && catkin_make

如果您在访问此库并输入之前安装了另一个pcl版本

sudo make uninstall
make uninstall

然后删除此目录。

最新更新