Не удалось найти реализацию промежуточного программного обеспечения ROS 'rmw_fastrtps_cpp'. Выберите один из следующих: - PullRequest
0 голосов
/ 23 октября 2019

Я установил ros 2 на моем Raspberry Pi 3 с Ubuntu Mate. Я написал некоторый код и пользовательские сообщения. Проблема в том, что теперь, если я пытаюсь скомпилировать его, я получаю сообщение: Не удалось найти реализацию промежуточного программного обеспечения ROS 'rmw_fastrtps_cpp'. Выберите один из следующих вариантов:

И пока нет никаких реализаций ... как я могу это исправить?

Я установил openslice с помощью apt install ros- $ ROS_DISTRO-rmw-opensplice-cpp итакже установите переменную среды (export RMW_IMPLEMENTATION = rmw_opensplice_cpp).

вот мой cmake:

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(rclpy REQUIRED)
find_package(builtin_interfaces REQUIRED)
find_package(rosidl_default_generators REQUIRED)

get_default_rmw_implementation(rmw_implementation)
find_package("${rmw_implementation}" REQUIRED)
get_rmw_typesupport(typesupport_impls "${rmw_implementation}" LANGUAGE "cpp")

foreach(typesupport_impl ${typesupport_impls})
  rosidl_target_interfaces(publish_address_book
    ${PROJECT_NAME} ${typesupport_impl}
  )
endforeach()

rosidl_generate_interfaces(${PROJECT_NAME}
  "msg/Vec3f.msg"
  DEPENDENCIES builtin_interfaces
)

add_executable(bno055 src/bno055/main.cpp)
ament_target_dependencies(bno055 rclcpp std_msgs)
rosidl_target_interfaces(bno055 ${PROJECT_NAME} g203_messages)
´´´
...