工程問題--ubuntu 14.04/16.04原始碼安裝catvehicle
阿新 • • 發佈:2018-12-15
ubuntu 14.04/16.04原始碼安裝catvehicle
系統環境:
1. Ubuntu 14.04 + ROS Indigo 或者 Ubuntu 16.04 + ROS kinetic(主要)
2. Gazebo模型已經下載完成。
安裝步驟:
1. 建立工作空間:
1 cd ~ 2 mkdir -p catvehicle_ws/src 3 cd catvehicle_ws 4 catkin_make 5 echo "source ~/catvehicle_ws/devel/setup.bash" > ~/.bashrc 6 source ~/.bashrc
2. 下載功能包編譯:
1cd ~/catvehicle_ws/src 2 git clone https://github.com/sprinkjm/catvehicle.git 3 git clone https://github.com/sprinkjm/obstaclestopper.git 4 cd .. 5 catkin_make
3. catkin_make過程中終端報錯及其解決方法
1)找不到controller_managerConfig.cmake
1 CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package):2 Could not find a package configuration file provided by 3 "controller_manager" with any of the following names: 4 5 controller_managerConfig.cmake 6 controller_manager-config.cmake 7 8 Add the installation prefix of "controller_manager" to CMAKE_PREFIX_PATH or 9 set "controller_manager_DIR" to a directory containing one of the above 10 files. If "controller_manager" provides a separate development package or 11 SDK, be sure it has been installed. 12 Call Stack (most recent call first): 13 catvehicle/CMakeLists.txt:7 (find_package) 14 15 16 -- Could not find the required component 'controller_manager'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found. 17 CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): 18 Could not find a package configuration file provided by 19 "controller_manager" with any of the following names: 20 21 controller_managerConfig.cmake 22 controller_manager-config.cmake 23 24 Add the installation prefix of "controller_manager" to CMAKE_PREFIX_PATH or 25 set "controller_manager_DIR" to a directory containing one of the above 26 files. If "controller_manager" provides a separate development package or 27 SDK, be sure it has been installed. 28 Call Stack (most recent call first): 29 catvehicle/CMakeLists.txt:7 (find_package) 30 31 32 -- Configuring incomplete, errors occurred! 33 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeOutput.log". 34 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeError.log".
解決方法:
1 sudo apt-get install ros-kinetic-ros-control ros-kinetic-ros-controllers 2 (14.04版本輸入以下命令列: 3 sudo apt-get install ros-indigo-ros-control ros-indigo-ros-controllers)
再次catkin_make。
2)找不到gazebo_ros_controlConfig.cmake
1 CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package): 2 Could not find a package configuration file provided by 3 "gazebo_ros_control" with any of the following names: 4 5 gazebo_ros_controlConfig.cmake 6 gazebo_ros_control-config.cmake 7 8 Add the installation prefix of "gazebo_ros_control" to CMAKE_PREFIX_PATH or 9 set "gazebo_ros_control_DIR" to a directory containing one of the above 10 files. If "gazebo_ros_control" provides a separate development package or 11 SDK, be sure it has been installed. 12 Call Stack (most recent call first): 13 catvehicle/CMakeLists.txt:7 (find_package) 14 15 16 -- Could not find the required component 'gazebo_ros_control'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found. 17 CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): 18 Could not find a package configuration file provided by 19 "gazebo_ros_control" with any of the following names: 20 21 gazebo_ros_controlConfig.cmake 22 gazebo_ros_control-config.cmake 23 24 Add the installation prefix of "gazebo_ros_control" to CMAKE_PREFIX_PATH or 25 set "gazebo_ros_control_DIR" to a directory containing one of the above 26 files. If "gazebo_ros_control" provides a separate development package or 27 SDK, be sure it has been installed. 28 Call Stack (most recent call first): 29 catvehicle/CMakeLists.txt:7 (find_package) 30 31 32 -- Configuring incomplete, errors occurred! 33 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeOutput.log". 34 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeError.log". 35 Makefile:318: recipe for target 'cmake_check_build_system' failed 36 make: *** [cmake_check_build_system] Error 1 37 Invoking "make cmake_check_build_system" failed
解決方法:
1 sudo apt-get install ros-kinetic-gazebo-ros-control 2 (14.04版本輸入以下命令列: 3 sudo apt-get install ros-indigo-gazebo-ros-control)
再次catkin_make。
3)找不到sicktoolboxConfig.cmake
1 CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package): 2 Could not find a package configuration file provided by "sicktoolbox" with 3 any of the following names: 4 5 sicktoolboxConfig.cmake 6 sicktoolbox-config.cmake 7 8 Add the installation prefix of "sicktoolbox" to CMAKE_PREFIX_PATH or set 9 "sicktoolbox_DIR" to a directory containing one of the above files. If 10 "sicktoolbox" provides a separate development package or SDK, be sure it 11 has been installed. 12 Call Stack (most recent call first): 13 catvehicle/CMakeLists.txt:7 (find_package) 14 15 16 -- Could not find the required component 'sicktoolbox'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found. 17 CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): 18 Could not find a package configuration file provided by "sicktoolbox" with 19 any of the following names: 20 21 sicktoolboxConfig.cmake 22 sicktoolbox-config.cmake 23 24 Add the installation prefix of "sicktoolbox" to CMAKE_PREFIX_PATH or set 25 "sicktoolbox_DIR" to a directory containing one of the above files. If 26 "sicktoolbox" provides a separate development package or SDK, be sure it 27 has been installed. 28 Call Stack (most recent call first): 29 catvehicle/CMakeLists.txt:7 (find_package) 30 31 32 -- Configuring incomplete, errors occurred! 33 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeOutput.log". 34 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeError.log". 35 Makefile:318: recipe for target 'cmake_check_build_system' failed 36 make: *** [cmake_check_build_system] Error 1 37 Invoking "make cmake_check_build_system" failed
解決方法:
14.04環境下:
1 sudo apt-get install ros-indigo-sicktoolbox ros-indigo-sicktoolbox-wrapper
16.04環境下:
1 cd ~ 2 mkdir -p sicktoolbox_ws/src 3 cd sicktoolbox_ws 4 catkin_make 5 cd src 6 git clone https://github.com/SantoshBanisetty/sicktoolbox.git 7 git clone https://github.com/ros-drivers/sicktoolbox_wrapper/tree/indigo-devel 8 cd .. 9 catkin_make 10 echo "source ~/sicktoolbox_ws/devel/setup.bash" > ~/.bashrc 11 source ~/.bashrc
進入到catvehicle_ws中
1 cd ~/catvehicle_ws
再次在catkin_make。
4)找不到velodyne_pointcloudConfig.cmake
1 CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package): 2 Could not find a package configuration file provided by 3 "velodyne_pointcloud" with any of the following names: 4 5 velodyne_pointcloudConfig.cmake 6 velodyne_pointcloud-config.cmake 7 8 Add the installation prefix of "velodyne_pointcloud" to CMAKE_PREFIX_PATH 9 or set "velodyne_pointcloud_DIR" to a directory containing one of the above 10 files. If "velodyne_pointcloud" provides a separate development package or 11 SDK, be sure it has been installed. 12 Call Stack (most recent call first): 13 catvehicle/CMakeLists.txt:7 (find_package) 14 15 16 -- Could not find the required component 'velodyne_pointcloud'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found. 17 CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): 18 Could not find a package configuration file provided by 19 "velodyne_pointcloud" with any of the following names: 20 21 velodyne_pointcloudConfig.cmake 22 velodyne_pointcloud-config.cmake 23 24 Add the installation prefix of "velodyne_pointcloud" to CMAKE_PREFIX_PATH 25 or set "velodyne_pointcloud_DIR" to a directory containing one of the above 26 files. If "velodyne_pointcloud" provides a separate development package or 27 SDK, be sure it has been installed. 28 Call Stack (most recent call first): 29 catvehicle/CMakeLists.txt:7 (find_package) 30 31 32 -- Configuring incomplete, errors occurred! 33 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeOutput.log". 34 See also "/home/gian/catvehicle_ws/build/CMakeFiles/CMakeError.log". 35 Makefile:318: recipe for target 'cmake_check_build_system' failed 36 make: *** [cmake_check_build_system] Error 1 37 Invoking "make cmake_check_build_system" failed
解決方法:
1 sudo apt-get install ros-kinetic-velodyne-pointcloud 2 (14.04版本輸入以下命令列: 3 sudo apt-get install ros-indigo-velodyne-pointcloud)
再次catkin_make。
5)終端會報一堆warning和error
1 /usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options. 2 #error This file requires compiler and library support \
解決方法:
1 sudo gedit ~/catvehicle_ws/src/CMakeLists.txt 2 在檔案中的第2或者3或者4或者5行的位置新增: 3 SET( CMAKE_CXX_FLAGS "-std=c++11 -O3") 4 儲存。
再次catkin_make就可以了。
參考網址:
https://blog.csdn.net/handsome_for_kill/article/details/54382149