Provide branch for ROS 2 Jazzy and update GIT_TAG for xrceagent

Offen
#223 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
cpp

Rechercherichtung

Beginnen Sie mit SuperBuild.cmake im rolling-Branch und prüfen Sie den GIT_TAG für Micro-XRCE-DDS-Agent. Reproduzieren Sie den colcon build nach dem Sourcen von ROS Rolling und überprüfen Sie anschließend graph_typesupport.cpp sowie die Patches im referenzierten prs/pr-rolling-fastcdr-2.2.x-Branch. Erledigt ist die Aufgabe, wenn der Agent für den angeforderten ROS 2-Branch gegen Fast-CDR 2.2.x baut.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Issue template

This is a feature request. ROS 2 Rolling and Jazzy depend on Fast-CDR 2.2.x. Version 2.4.3 of Micro-XRCE-DDS-Agent supports this but the GIT_TAG in the SuperBuild.cmake in the rolling branch refers to ros2

Steps to reproduce the issue
  • Create a colcon workspace to build this repo, and source ROS Rolling before building.
Expected behavior
  • micro-ROS-Agent will build in a colcon workspace that has sourced ROS Rolling.
Actual behavior
  • micro-ROS-Agent will not build in a colcon workspace that has sourced ROS Rolling.
Additional information

Looks like this will require code changes as well, as micro-ROS-agent will not build against the updated Fast-CDR version. For example:

/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:57:33: error: no member named 'DDS_CDR' in 'eprosima::fastcdr::Cdr'
        eprosima::fastcdr::Cdr::DDS_CDR);
        ~~~~~~~~~~~~~~~~~~~~~~~~^
/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:64:54: error: no member named 'getSerializedDataLength' in 'eprosima::fastcdr::Cdr'; did you mean 'get_serialized_data_length'?
        payload->length = static_cast<uint32_t>(scdr.getSerializedDataLength());
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
                                                     get_serialized_data_length
/Users/rhys/Code/ros2/rolling/ros2-rolling/install/fastcdr/include/fastcdr/Cdr.h:266:23: note: 'get_serialized_data_length' declared here
    Cdr_DllAPI size_t get_serialized_data_length() const;
                      ^
/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:80:33: error: no member named 'DDS_CDR' in 'eprosima::fastcdr::Cdr'
        eprosima::fastcdr::Cdr::DDS_CDR);
        ~~~~~~~~~~~~~~~~~~~~~~~~^
/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:149:33: error: no member named 'DDS_CDR' in 'eprosima::fastcdr::Cdr'
        eprosima::fastcdr::Cdr::DDS_CDR);
        ~~~~~~~~~~~~~~~~~~~~~~~~^
/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:156:54: error: no member named 'getSerializedDataLength' in 'eprosima::fastcdr::Cdr'; did you mean 'get_serialized_data_length'?
        payload->length = static_cast<uint32_t>(scdr.getSerializedDataLength());
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
                                                     get_serialized_data_length
/Users/rhys/Code/ros2/rolling/ros2-rolling/install/fastcdr/include/fastcdr/Cdr.h:266:23: note: 'get_serialized_data_length' declared here
    Cdr_DllAPI size_t get_serialized_data_length() const;
                      ^
/Users/rhys/Code/ros2/rolling/ros2-ardupilot/src/micro_ros_agent/micro_ros_agent/src/agent/graph_manager/graph_typesupport.cpp:172:33: error: no member named 'DDS_CDR' in 'eprosima::fastcdr::Cdr'
        eprosima::fastcdr::Cdr::DDS_CDR);
        ~~~~~~~~~~~~~~~~~~~~~~~~^
6 errors generated.
make[2]: *** [CMakeFiles/micro_ros_agent.dir/src/agent/graph_manager/graph_typesupport.cpp.o] Error 1
make[1]: *** [CMakeFiles/micro_ros_agent.dir/all] Error 2

This branch contains patches to fix the above issue: https://github.com/srmainwaring/micro-ROS-Agent/tree/prs/pr-rolling-fastcdr-2.2.x

Vorherrschende Sprache
C++
Sterne
201
Forks
111
Ø Merge
1 T. 6 Std.
Gemergte PRs (30 T.)
10

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus micro-ROS/micro-ROS-Agent

Alle Issues in micro-ROS/micro-ROS-Agent

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.