Mavros: error: 'BODY_FRD' ist kein Mitglied von 'mavlink::common::MAV_FRAME'

Erstellt am 7. Mai 2020  ·  13Kommentare  ·  Quelle: mavlink/mavros

Hi,
Beim Erstellen von ~/catkin_ws erhalte ich diese Fehlermeldung

/catkin_ws/src/mavros/mavros_extras/src/plugins/odom. cpp:228 :53: Fehler: 'BODY_FRD' ist kein Mitglied von 'mavlink::common::MAV_FRAME'
msg.child_frame_id = utils::enum_value(MAV_FRAME::BODY_FRD);

Weiß jemand, wie man es repariert?

build error question

Hilfreichster Kommentar

Nun, das scheint der umgekehrte Fall zu sein. Zu mavlink Release 2020.5.5 bricht wegen https://github.com/mavlink/mavlink/pull/1112 ab.

Ich denke, eine vorübergehende Lösung, um enum_value durch einen hartcodierten Wert zu ersetzen, bis er im Upstream behoben würde.

Alle 13 Kommentare

mavlink-Paket aktualisieren.

Nun, das scheint der umgekehrte Fall zu sein. Zu mavlink Release 2020.5.5 bricht wegen https://github.com/mavlink/mavlink/pull/1112 ab.

Ich denke, eine vorübergehende Lösung, um enum_value durch einen hartcodierten Wert zu ersetzen, bis er im Upstream behoben würde.

Ich habe eine Schnellkorrektur zum Master hinzugefügt, bitte aktualisieren.
https://github.com/mavlink/mavros/commit/1a898dea2202ee1af56d698bd40d40994346c5cb

Danke vooon, gestern wurde ich verrückt nach diesem Fehler!

Schließe dies als gelöst. Aber bei Bedarf gerne wieder öffnen.

Hallo, ich habe vor ein paar Minuten ein neues Projekt gestartet und das Problem ist immer noch da ... (Ich habe es wie Sie behoben).
Ich habe die Anleitung von hier befolgt
https://github.com/mavlink/mavros/tree/master/mavros#installation
Vielleicht gibt es ein Problem mit der Master-Version (nicht mit Ihren Änderungen aktualisiert)?

@Cristian-wp-Commit war zu meistern. Versuchen Sie es mit git pull .

@vooon DU kannst mir vielleicht helfen. Das obige scheint durch eine mavlink-Entfernung eines Frames verursacht zu werden, was meiner Meinung nach falsch war.
Können Sie mir helfen zu verstehen, ob diese Entfernung angemessen war? Siehe https://github.com/mavlink/mavlink/pull/1112#issuecomment -625050092

BEARBEITET. Und jetzt sehe ich, dass Sie hart codieren, um das zu beheben. Was sagt mir, dass wir MAV_FRAME_BODY_FRD brauchen - richtig? Meine Vermutung ist, dass wir keine FLU-Variante brauchen?

@hamishwillee leider bin ich mir nicht sicher, mein Commit ist nur eine schnelle Lösung, um das Kompilierungsproblem zu lösen.
Soweit ich mich erinnere, war BODY_NED eigentlich FRD, also führt es ein wenig Verwirrung ein.

Nach https://github.com/mavlink/mavros/commit/1789e810d59cdad70ac0ada134254c96b05a06ed#diff -750c83d1bf274515183c544f142bac77 verwendet odom nur FRD, nicht FLU.

Hallo @vooon FYI, MAV_FRAME_BODY_FRD wurde gerade wieder in common.xml hinzugefügt :-)

@hamishwillee danke! Ich werde Pakete bald veröffentlichen.

Ich habe dieses Problem wie folgt gelöst:

  1. Deinstallieren Sie den mavlink:

sudo apt-get remove ros-kinetic-mavlink

  1. Klonen Sie die mavlink-gbp-Version:

cd catkin_ws/src/
git clone https://github.com/mavlink/mavlink-gbp-release.git
cd mavlink-gbp-release
git checkout release/kinetic/mavlink

  1. Erstellen Sie den Catkin-Arbeitsbereich:

cd ~/catkin_ws
catkin clean -y
catkin build

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen