micro-ROS / micro-ROS/micro_ros_nuttx_app

Modifications to run microROS on NuttX RTOS

Offen
#31 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Makefile
Sterne
15
Forks
9
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

## Issue template
microROS on NuttX target runs correctly again, but there are some corrections required to correctly compile the example.

- Hardware description: nucelo-144 board
- RTOS: NuttX
- Installation type: microROS for NuttX (this example)
- Version or commit hash: galactic

#### Steps to reproduce the issue

The file micro_ros_src/src/rcutils/src/filesystem.c contains a redefinition of "DIR" (which is already defined in the dirent.h" file in NuTTX).

A test is required such

#ifdef DIR or #ifndef DIR....

#### Expected behavior

the nuttx application compile again

#### Actual behavior

There is the error about redefining DIR. To get the compilaton correctly I've commented the line

#ifdef RCUTILS_NO_FILESYSTEM
//typedef int DIR; <=======
#endif // _RCUTILS_NO_FILESYSTEM
typedef struct rcutils_dir_iter_state_t
{
#ifdef _WIN32
HANDLE handle;
WIN32_FIND_DATA data;
#else
DIR * dir;
#endif
} rcutils_dir_iter_state_t;

but it is not the correct solution.

#### Additional information

I've modified also the microros_main.c file in the microros/example_app

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die Kompilierung der NuttX-Anwendung zu reproduzieren, und untersuche micro_ros_src/src/rcutils/src/filesystem.c zusammen mit der Definition von DIR in NuttX' dirent.h. Überprüfe die bedingte Behandlung von RCUTILS_NO_FILESYSTEM und stelle sicher, dass das Beispiel kompiliert wird, ohne DIR neu zu definieren; im Issue werden außerdem Änderungen in microros/example_app/microros_main.c erwähnt, die möglicherweise überprüft werden müssen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
c
Bereich
embedded-iot
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

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