Debuggen mit GDB (ähnlich dem Bsp. auf Yagarto-Homepage)

#3137006
Lesenswert?

Hallo,

ich bin gerade dabei das freie RTOS ecos auf ein FM3-Evalboard zu 
portieren und dazu habe ich mir als IDE Eclipse-CDT eingerichtet.
Nun bin ich soweit, dass ich zum Debuggen übergehen kann.

Dazu habe ich mir ein Makefile-Projekt in Eclipse erstellt, in dem sich 
meine erstellte ecos-Library befindet sowie eine kleine 
HelloWorld-Anwendung, die ein LED leuchten lassen soll.
Die Konfiguration des Projekts sollte passen - das Makefile macht was es 
soll: es kompiliert mein HelloWorld und linkt es anschließend mit der 
ecos-Library, sodass zu guter Letzt ein elf-File entsteht.

Nun will ich die ganze Sache debuggen. Dazu habe ich ein Onboard-JLink, 
GDB von der Yagarto-Toolchain sowie den GDB-Server von Segger.

Ich habe einige Monate zuvor ein Beispiel von der Yagarto-Website 
nachgebastelt und konnte mit den gleichen Werkzeugen und dem gleichen 
Target erfolgreich debuggen. Nun habe ich mir gedacht, dass die ganze 
Sache für mein ecos-Projekt eigtl. auch funktionieren sollte.

Nur scheitert es bei mir wohl bei den Debug-Konfigurationen - u.a. den 
StartUp-Einstellungen. Leider habe ich darin bis dato so gut wie keine 
Erfahrung - deswegen meine Frage an euch:

Weiß jemand auf was ich bei den Commands für den GDB achten muss? Im 
Yagarto-Beispiel wurde Dinge gemacht wie:

target remote localhost:2331
monitor endian little
...
monitor reg r13 = (0x20000000)
monitor reg pc = (0x20000004)


Ich weiß bspw., dass 0x20000000 die Startadresse vom RAM meines Boards 
ist.
Aber kann jemand evtl. erläutern, was man beachten muss?

Viele Grüße, Lukas
Gast #3137573
Lesenswert?

Jörg Wunsch schrieb:
> Ich benutze immer OpenOCD, mit dem Segger-Server steh' ich auf
> Kriegsfuß.

Echt? Ich fand das bis jetzt mit den J-Link GDB Server immer recht 
simpel. Das einzige worauf man achten muss, wenn man im Flash debuggen 
will, ist das man dem J-Link bekannt man welches Device denn dran hängt, 
damit der richtige Flash Algorithmus benutzt werden kann (wie soll es 
auch sonst anders funktionieren).
Etwa in der Art wie:
monitor flash device = AT91SAM7A3

Das einfachste ist, sich eine entsprechende embOS Trial Version zu laden 
und die GDB Kommandos dort abzuschauen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren