Ошибка HectorSLAM в команде catkin_make при использовании RPLIDAR A2 на пи - PullRequest
0 голосов
/ 07 ноября 2019

Я работаю над роботизированным проектом. Мы строим радиоуправляемый автомобиль, который будет автономным. поэтому мы используем ROS для управления всем этим на raspberryPi 3B + с помощью RPLIDAR SDK и HECTOR SLAM.

команда catkin_make была успешной только для RPLIDAR, и при клонировании удар гектора в ту же папку src,(src / hector_slam и src / rplidar_ros) при запуске catkin_make теперь, когда появился HECTOR_SLAM, я получаю эти ошибки, и я не уверен, как решить

catkin_make
Base path: /home/bres/rplidar_ws
Source space: /home/bres/rplidar_ws/src
Build space: /home/bres/rplidar_ws/build
Devel space: /home/bres/rplidar_ws/devel
Install space: /home/bres/rplidar_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/bres/rplidar_ws/build"
####
####
#### Running command: "make -j4 -l4" in "/home/bres/rplidar_ws/build"
####
[  0%] Built target nav_msgs_generate_messages_nodejs
[  0%] Built target std_msgs_generate_messages_nodejs
[  0%] Built target _hector_nav_msgs_generate_messages_check_deps_GetRecoveryInfo
[  0%] Built target _hector_nav_msgs_generate_messages_check_deps_GetSearchPosition
[  0%] Built target _hector_nav_msgs_generate_messages_check_deps_GetNormal
[  0%] Built target _hector_nav_msgs_generate_messages_check_deps_GetDistanceToObstacle
[  0%] Built target nav_msgs_generate_messages_py
[  0%] Built target nav_msgs_generate_messages_lisp
[  0%] Built target std_msgs_generate_messages_py
[  0%] Built target std_msgs_generate_messages_lisp
[  0%] Built target _hector_nav_msgs_generate_messages_check_deps_GetRobotTrajectory
[  0%] Built target std_msgs_generate_messages_cpp
[  0%] Built target nav_msgs_generate_messages_cpp
[  0%] Built target nav_msgs_generate_messages_eus
[  0%] Built target std_msgs_generate_messages_eus
[  0%] Built target rosgraph_msgs_generate_messages_cpp
[  0%] Built target _catkin_empty_exported_target
[  0%] Built target actionlib_msgs_generate_messages_py
[  0%] Built target actionlib_msgs_generate_messages_eus
[  0%] Built target actionlib_msgs_generate_messages_lisp
[  0%] Built target geometry_msgs_generate_messages_cpp
[  0%] Built target actionlib_msgs_generate_messages_cpp
[  0%] Built target geometry_msgs_generate_messages_eus
[  0%] Built target actionlib_msgs_generate_messages_nodejs
[  0%] Built target geometry_msgs_generate_messages_lisp
[  0%] Built target geometry_msgs_generate_messages_nodejs
[  0%] Built target roscpp_generate_messages_py
[  0%] Built target geometry_msgs_generate_messages_py
[  0%] Built target roscpp_generate_messages_nodejs
[  0%] Built target roscpp_generate_messages_eus
[  0%] Built target rosgraph_msgs_generate_messages_eus
[  0%] Built target roscpp_generate_messages_cpp
[  0%] Built target rosgraph_msgs_generate_messages_lisp
[  0%] Built target rosgraph_msgs_generate_messages_nodejs
[  0%] Built target roscpp_generate_messages_lisp
[  0%] Built target rosgraph_msgs_generate_messages_py
[  1%] Building CXX object hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/src/map_to_image_node.cpp.o
[  4%] Built target rplidarNodeClient
[ 14%] Built target rplidarNode
[ 17%] Built target imu_attitude_to_tf_node
[ 17%] Built target visualization_msgs_generate_messages_eus
[ 17%] Built target visualization_msgs_generate_messages_cpp
[ 20%] Built target pose_and_orientation_to_imu_node
[ 20%] Built target visualization_msgs_generate_messages_lisp
[ 20%] Built target visualization_msgs_generate_messages_py
[ 20%] Built target visualization_msgs_generate_messages_nodejs
[ 20%] Built target sensor_msgs_generate_messages_eus
[ 20%] Built target sensor_msgs_generate_messages_lisp
[ 20%] Built target sensor_msgs_generate_messages_nodejs
[ 20%] Built target sensor_msgs_generate_messages_cpp
[ 20%] Built target sensor_msgs_generate_messages_py
[ 20%] Built target tf_generate_messages_py
[ 20%] Built target tf_generate_messages_cpp
[ 20%] Built target actionlib_generate_messages_cpp
[ 20%] Built target tf_generate_messages_eus
[ 20%] Built target actionlib_generate_messages_eus
[ 20%] Built target actionlib_generate_messages_lisp
[ 20%] Built target actionlib_generate_messages_nodejs
[ 20%] Built target tf_generate_messages_lisp
[ 20%] Built target tf2_msgs_generate_messages_eus
[ 20%] Built target tf_generate_messages_nodejs
[ 20%] Built target tf2_msgs_generate_messages_nodejs
[ 20%] Built target actionlib_generate_messages_py
[ 20%] Built target tf2_msgs_generate_messages_lisp
[ 20%] Built target tf2_msgs_generate_messages_py
[ 20%] Built target tf2_msgs_generate_messages_cpp
[ 20%] Built target _hector_mapping_generate_messages_check_deps_HectorDebugInfo
[ 20%] Built target _hector_mapping_generate_messages_check_deps_HectorIterData
[ 35%] Built target hector_nav_msgs_generate_messages_nodejs
[ 35%] Built target hector_nav_msgs_generate_messages_py
[ 42%] Built target hector_nav_msgs_generate_messages_lisp
[ 50%] Built target hector_nav_msgs_generate_messages_cpp
[ 58%] Built target hector_nav_msgs_generate_messages_eus
[ 61%] Built target hector_mapping_generate_messages_cpp
[ 65%] Built target hector_mapping_generate_messages_py
[ 70%] Built target hector_mapping_generate_messages_eus
[ 72%] Built target hector_mapping_generate_messages_lisp
[ 75%] Built target hector_mapping_generate_messages_nodejs
[ 75%] Built target hector_nav_msgs_generate_messages
[ 77%] Building CXX object hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/src/hector_trajectory_server.cpp.o
[ 78%] Building CXX object hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/src/hector_map_server.cpp.o
[ 81%] Built target geotiff_writer
[ 82%] Building CXX object hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/HectorMappingRos.cpp.o
virtual memory exhausted: Cannot allocate memory
hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/build.make:62: recipe for target 'hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/src/hector_map_server.cpp.o' failed
make[2]: *** [hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/src/hector_map_server.cpp.o] Error 1
CMakeFiles/Makefile2:3580: recipe for target 'hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/all' failed
make[1]: *** [hector_slam/hector_map_server/CMakeFiles/hector_map_server.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/build.make:62: recipe for target 'hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/HectorMappingRos.cpp.o' failed
make[2]: *** [hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/HectorMappingRos.cpp.o] Error 4
make[2]: *** Waiting for unfinished jobs....
[ 84%] Building CXX object hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/main.cpp.o
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/build.make:62: recipe for target 'hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/src/hector_trajectory_server.cpp.o' failed
make[2]: *** [hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/src/hector_trajectory_server.cpp.o] Error 4
CMakeFiles/Makefile2:3689: recipe for target 'hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/all' failed
make[1]: *** [hector_slam/hector_trajectory_server/CMakeFiles/hector_trajectory_server.dir/all] Error 2
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/build.make:62: recipe for target 'hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/src/map_to_image_node.cpp.o' failed
make[2]: *** [hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/src/map_to_image_node.cpp.o] Error 4
CMakeFiles/Makefile2:2767: recipe for target 'hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/all' failed
make[1]: *** [hector_slam/hector_compressed_map_transport/CMakeFiles/map_to_image_node.dir/all] Error 2
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/build.make:86: recipe for target 'hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/main.cpp.o' failed
make[2]: *** [hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/src/main.cpp.o] Error 4
CMakeFiles/Makefile2:3758: recipe for target 'hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/all' failed
make[1]: *** [hector_slam/hector_mapping/CMakeFiles/hector_mapping.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j4 -l4" failed

Ответы [ 2 ]

1 голос
/ 08 ноября 2019

виртуальная память исчерпана: невозможно выделить память

Выше показано, что вы исчерпали память. Вы можете исправить это, увеличив пространство подкачки в вашей системе. Приведенные ниже команды создадут 4 ГБ дополнительного пространства подкачки в вашей системе

sudo dd if=/dev/zero of=/swapfile bs=1024 count=4194304
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

Чтобы сделать изменение постоянным, добавьте / etc / fstab

/swapfile swap swap defaults 0 0

Во время компиляции вы можете проверить свописпользование в другом терминале с использованием

sudo swapon --show

Увеличьте размер свопа, если его все еще недостаточно.

0 голосов
/ 09 ноября 2019

Существует 2 варианта:

  • добавить файл подкачки в соответствии с предложением
  • скомпилировать, используя -j1, чтобы остановить переполнение
...