Проблема с зависимостями при установке moveit

Я пытаюсь собрать Moveit из исходного кода, как указано в http://moveit.ros.org/install/source/

wstool init .
wstool merge https://raw.githubusercontent.com/ros-planning/moveit/indigo-devel/moveit.rosinstall
wstool update
rosdep install -y --from-paths . --ignore-src --rosdistro indigo
cd ..
catkin config --extend /opt/ros/indigo --cmake-args -DCMAKE_BUILD_TYPE=Release
catkin build

Однако я столкнулся с проблемами зависимости и смог решить некоторые из них. Я не могу понять эту ошибку.

    Errors     << moveit_ros_warehouse:make
    : undefined reference to `std::string mongo::integerToHex<int>(int)'
    : undefined reference to`mongo::logger::LogstreamBuilder::LogstreamBuilder(mongo::logger::LogDomain<mongo::logger::MessageEventEphemeral>*, std::string const&, mongo::logger::LogSeverity)'
    : undefined reference to `mongo::logger::LogstreamBuilder::~LogstreamBuilder()'
    : undefined reference to `mongo::logger::globalLogManager()'
    : undefined reference to `mongo::logger::LogstreamBuilder::makeStream()'
    : undefined reference to `mongo::invariantFailed(char const*, char const*, unsigned int)'



   Collect2: error: ld returned 1 exit status
    make[2]: *** [/home/smirani/ws_moveit/devel/.private/moveit_ros_warehouse/lib/moveit_ros_warehouse/moveit_warehouse_broadcast] Error 1
    make[1]: *** [warehouse/CMakeFiles/moveit_warehouse_broadcast.dir/all] Error 2
    make[1]: *** Waiting for unfinished jobs....

collect2: error: ld returned 1 exit status
    make[1]: *** [warehouse/CMakeFiles/moveit_warehouse_import_from_text.dir/all] Error 2
    make[2]: *** [/home/smirani/ws_moveit/devel/.private/moveit_ros_warehouse/lib/moveit_ros_warehouse/moveit_save_to_warehouse] Error 1
    make[1]: *** [warehouse/CMakeFiles/moveit_save_to_warehouse.dir/all] Error 2
    make: *** [all] Error 2

Failed     << moveit_ros_warehouse:make                        [ Exited with code 2 ]                                                                                                                                                 
Failed    <<< moveit_ros_warehouse                             [ 0.6 seconds ]

1 ответ

Решение

Это проблема зависимости. Ваш линкер ищет библиотеки MongoDB. Дважды проверьте, есть ли у вас бег sudo apt-get install mongodb mongodb-dev

Другие вопросы по тегам