Forum: Mikrocontroller und Digitale Elektronik Debuggen mit gdb unter Linux Ubuntu


von hurricane (Gast)


Lesenswert?

Hallo,

bin ein totaler Newbe in Microcontroller-Programmierung und momentan mit 
meinem Latein am Ende angelangt.
Ausgangssituation:
Ich habe ein eSom9263 mit Linux Kernel, wo ich liebend gerne mit C 
entwickeln würde.
Dazu besitze ich eine VM mit Linux Ubuntu 11.10, als 
Entwicklungsumgebung soll Eclipse 3.7 dienen. Ich verwende das 
linux-gnueabi-toolchain, welches mit dem Board mitgeliefert wurde.
Es scheitert am debuggen. Als Debugegr ist der 
angstrom-linux-gnueabi-gdb konfiguriert, als "command file" verwende ich 
eine selbs konfigurierte .gdb, wo host-port informationen definiert 
sind.
Ich kann den gdb-Server ausführen, der angstrom-linux-gnueabi-gdb 
verbindet sich damit auch.
Wenn ich nun debuggen möchte, erhalte ich sowohl im Eclipse auls auch im 
Terminal folgende Fehlermeldung:

Error in final launch sequence
Failed to execute MI command:
-exec-run
Error message from debugger back end:
The "remote" target does not support "run".  Try "help target" or 
"continue".
The "remote" target does not support "run".  Try "help target" or 
"continue".

Weiß jemand, woran das liegen könnte?
Danke schon mal

von Martin (Gast)


Lesenswert?

Am Anfang kannst du bei Linux wenn ein Problem auftritt u.U. problemlos 
mal mehrere Stunden eine Lösung suchen... Google wird dein Freund 
werden:
http://www.google.com/search?client=opera&rls=en&q=%22The+remote+target+does+not+support+run+Try+help+target+or+continue.%22&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest

erstes Ergebnis bei Google bringt uns zu:
http://sourceware.org/gdb/onlinedocs/gdb/Starting.html

ohne da jetzt genauer reingeschaut zu haben, fehlt bei dir ein 
"continue"?

Mal so ein paar Suchpunkte:
Gibts zu deinem Board eine Beschreibung, wie der gdb zu konfigurieren 
ist? Ggf. auch rein per Konsole, zum Test?

Hast du schonmal versucht, den gdb Server direkt mit Parametern auf 
einer Remote Konsole zu starten und dann mit Eclipse zu debuggen?

Wie ist Eclipse konfiguriert? Ich wage mich zu erinnern, dass in Eclipse 
ein Remote gdb Befehlssatz eingestellt sein muss... und wehe es ist der 
falsche.
Ich bin da aber auch noch ziemlich am Anfang, wenn ich manche andere 
Leute sehe, und verbringe auch noch sehr viel Zeit bei Google...

von hurricane (Gast)


Lesenswert?

Hi und erstmal vielen Dank für deine Antwort!
Ich bin mittlerweile schon seit mehr als einer Woche daran, das Linux so 
zu konfigurieren, dass ein Arbeiten mit dem Board gewährleistet werden 
kann und bin mitlerweile recht verzweifelt. Stolpere sozusagen von einem 
Problem ins andere.
Das Board ist ziemlich bescheiden dokumentiert, es gibt zwar eine 
Beschreibung zum Debuggen unter Eclipse, aber frei nach dem Motto 
"Simsalabim, es funktioniert!". Auf Problemlösungen wird da gar nicht 
eingegangen, finde leider auch bei Google nicht viel, was mich weiter 
bringen könnte.
Ich habe auch bereits die gdb-Verbindung rein über das Terminal 
eingerichtet, es wird sich zwar verbunden, die Fehlermeldung bleibt 
allerdings die selbe. Zur Konfiguration von Eclipse:der gdb-Befehlssatz 
dafür wurde auch mitgeliefert, daher habe ich den auch übernommen. 
Glaube um ehrlich zu sein aber nicht an ein Eclipse-Problem, eine 
Remote-Verbindung rein über das Terminal bringt ja die selben 
Ergebnisse.
Danke auch für die Seite, aber leider kenne ich sie schon. Wenn ich mit 
"continue" arbeite, werden meine Haltepunkte einfach übersprungen und 
das Programm (übringens nichts wildes, ein schlichtes "Hello_World" für 
Testzwecke, um zu schauen, ob das Debuggen funktioniert) fehlerfrei 
ausgeführt.

von Martin (Gast)


Lesenswert?

...bei mir war der Remote gdb und simsalabim, es funktioniert...

Da du dem gdb zumindest Befehle geben kannst, kanns gar nicht sooo 
falsch sein.

Das Debug Flag wird in deinem Makefile gesetzt? Weil sonst werden keine 
Debug Informationen eingebaut, was eben verursacht, das an Breakpoints 
nicht gehalten werden kann...

von hurricane (Gast)


Lesenswert?

Okay, sehr seltsam.
Das mit dem Flag ist ein guter Tip, werde dann mal bei Gelegenheit 
überprüfen.
Entschuldige die diletantische Frage, aber musstest du eventuell 
zusätzliche PlugIns installieren, um zu debuggen?

von Martin (Gast)


Lesenswert?

Ja, den gdb Server auf dem Target :-) Aber der l"auft ja bei dir schon.

von Marvol (Gast)


Lesenswert?

Ich vergesse meist -g im Makefile...

...oder load...

http://sourceware.org/gdb/onlinedocs/gdb/Starting.html

von hbl333 (Gast)


Lesenswert?

Vergiss den Gamboy Debugger und kauf dir was gescheites

von hurricane (Gast)


Lesenswert?

@hbl333, kannst du mir eventuell was empfehlen?
@Marvol, ich kompiliere ja eigentlich im Eclipse, ist also nichts mit 
makefile o.ä.

von Martin (Gast)


Lesenswert?

auch Eclipse braucht ein Makefile. In der Defaulteinstellung wird dieses 
aber automatisch erstellt und liegt nach dem Compilieren z.B. in 
~/workspace/projektname/Debug
Und wie wir alle wissen, ist Vertrauen gut und Kontrolle besser...

F"ur den Anfang - das Board ist da! Wenn du dir jetzt eins kaufen 
wolltest, w"urde ich eins mit Dokumentation empfehlen... aber es ist 
eben da. Und wenns nicht mehr reicht, kannst du ja auf einen gr"o"seres 
Board umsteigen, je nach Hardwaren"ahe mit mehr oder weniger gro"sen 
oder gar ohne "Anderungen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.