Hallo, habe heute mein ARM-board (AT91SAM7_EX256) aus dem Shop mal abgestaubt und rausgeholt. Habe dann das Toturial von yagarto durchgearbeitet und läuft auch alles ganz gut. bei Eclipse starte ich meine Session "openocd-ftd2xx -f .\prj\at91r40008_armusbocd.cfg" vorher habe ich mein projekt compiliert. Nach den beiden schritten starte ich mein debuggen. das führt er auch ganz gut aus. ich kann nur nicht mein main file sehen und debuggen. Er spuckt diese Meldung aus: No source available for "_vectors() n (siehe Bild) Kann auch auf Run gehen, macht er auch ohne Fehhlermeldung. Ich vermute, das irgendwas auf dem Chip schon drauf ist und evtl fuse-bits gesetzt sind!?! kann das sein? ist das schlüssig? würde er mir dann das auf irgendeine weise ausspucken? Danke und Gruß Mfd2004
Gast
#780082
"Nach den beiden schritten starte ich mein debuggen. das führt er auch ganz gut aus. ich kann nur nicht mein main file sehen und debuggen." Hä? Lies doch nochmal den Abschnitt im Tutorial über das Debuggen mit GDB!
Ja, ich glaub ich habe mich ziemlich unverständlich ausgedrückt. Ich benutze den arm-elf-gdb über eclipse. Nach erfolgreichem compilieren starte ich openocd. Danach starte ich über den vorher eingerichteten Debugdialog im eclipse den debugger (yagarto\bin\arm-elf-gdb.exe). Jetzt wechselt er in die Debug-Ansicht (siehe 1. Beitrag angefügtes Bild). Nun kannte ich es von "damals" das ich nun meine main.c offen vor mit hatte und der Breakpoint an den Anfang meiner main stand. ein anschließendes "Run" startete meinen uC und ich konnte damit arbeiten. Nun ist es aber so, das ich nicht mit meiner main.c arbeiten kann. Er scheint etwas abzuarbeiten, was schon drin ist. leider nicht mein programm was drauf sollte. Bisher kannte ich es so, das ich eine Fehlermeldung bekommen habe und das er "run" damit abgebrochen hat. Nun läuft er weiter, als wenn nichts wäre. Das meinte ich mit: "Nach den beiden schritten starte ich mein debuggen. das führt er auch ganz gut aus. ich kann nur nicht mein main file sehen und debuggen." Hoffe, das ich es rüber bringen konnte. Würden fuse-bits gesetzt sein würde er mir eine Fehlermeldung rausgeben? Kennt jemand das Problem??? Grüße Marius
Gast
#780243
Wie schauen denn Deine GDB-Befehle aus? Kommt da ein "break main" vor? Hast Du auch entsprechend kompiliert? Ich meine, wenn Du im RAM debuggen willst, hast Du das auch dem Linker gesagt?
Gast
#780274
Hi, hatte das gleiche Problem, konnte es aber beheben indem ich statt dem Native-Debugger den Cygwin benutzt habe.
Hi, danke Gast2!! Also das war wohl das Problem. :-) Leider hat sich ein zweites Problem eingeschlichen. (kleiner- hoffe ich! ) Bekomme Fehlermedlung siehe Anahng oder hier:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
Habe jetzt das ganze Projekt aufgeräumt und nochmal gemacht. Irgendwo steckt der Wurm. Dann bin ich nochmal die Yagarto anleitung durchgegangen ... Aber mir ist nichts aufgefallen, was ich anders habe (außer das mein GDB jetzt über Cygwin läuft). Mit den ersten Fehlermeldungen die sich ja auf meine Initialisierungs-Befehle beziehen kann ich gar nicht soo viel anfangen. Was mich wundert sind die letzten zeilen. "Warning: /cygdrive/C/User ...." Wo und warum setzt er cygdrive vor C ?? Ist das richtig? Habe die Hilfe schon durchsucht, aber nichts gefunden... Habt Ihr eine Ahnung? MFG Marius
Also das Problem mit den Initialisierungs-Befehlen ist weg. Fragt nicht wieso, oder warum :-) Habe nur noch das Problem mit dem directory: Warning: /cygdrive/C/Users/Marius/workspace/TEST/src: No such file or directory. Warning: /cygdrive/C/Users/Marius/workspace/TEST/prj: No such file or directory. Warning: /cygdrive/C/Users/Marius/workspace/TEST/inc: No such file or directory. Warning: /cygdrive/C/Users/Marius/workspace/TEST/.dep: No such file or directory. Warning: /cygdrive/C/Users/Marius/workspace/TEST: No such file or directory. Don't know how to run. Try "help target". woher bezieht er diese Addresse? also der Pfad stimmt bis auf dieses /cygdrive. MFG und Danke, Marius
Gast
#781150
Irgend wie muss man die Windows-Laufwerke auf Unix-Pfade anpassen /cygdrive/C passt also.
Aber wieso findet er dort nicht den richtigen Pfad, obwohl genau dort mein Projekt mit den Dateien liegt?
Gast
#781289
Vielleicht ne blöde Frage, aber hast Du eingestellt wo sich Deine elf-Datei befindet und wo die arm-elf-gdb.exe steckt?
Keine Frage ist blöd! Bin ja gerade hier im Forum um Hilfe zu bekommen! Bei Eclipse habe ich im Debug-Dialog die test.elf als Application angegeben. Im GDB-Debugger steht C:\Program Files\yagarto\bin\arm-elf-gdb.exe. GDB-Commandfile ist leer. Unter commands steht:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
Der Rest ist eigentlich so belassen. Denke das es nicht an den Commands liegt, da diese ja auch ausgeführt werden ohne Fehlermeldung anzuzeigen. Erst, wenn er dann auf die main.c zugreifen will findet er diese nicht, obwohl der Pfad doch stimmt! Das wird ausgeführt:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
Demmnach schreibt er ja. Den rest ... Ich bin leider nur einsteiger und erstmal ratlos. Mal sehen, was der morgige Tag bringt. Vielleicht finde ich den Fehler ja oder jemand kann mir helfen! MFG Marius
Gast
#781552
Marius Merten wrote: > Bei Eclipse habe ich im Debug-Dialog die test.elf als Application > angegeben. Im GDB-Debugger steht C:\Program > Files\yagarto\bin\arm-elf-gdb.exe. GDB-Commandfile ist leer. Unter > commands steht: Leerzeichen im Pfad haben bei mir schon zu Problemen geführt. Die PATH-Variable hast du angepasst, damit alles gefunden wird? > Warning: /cygdrive/C/Users/Marius/workspace/TEST/src: No such file or > directory. > Warning: /cygdrive/C/Users/Marius/workspace/TEST/prj: No such file or > directory. > Warning: /cygdrive/C/Users/Marius/workspace/TEST/inc: No such file or > directory. > Warning: /cygdrive/C/Users/Marius/workspace/TEST/.dep: No such file or > directory. > Warning: /cygdrive/C/Users/Marius/workspace/TEST: No such file or > directory. Existieren diese Verzeichnisse? Warum werden diese Verzeichnisse gesucht? Ansonsten kann ich dir nur empfehlen, das Tutorial Schritt für Schritt durcharbeiten, bis du einen Fehler findest. Bis dann, Tilo
Danke dir erstmal Tilo für den Beitrag! Denke nicht, das es mit den Leerzeichen zu tun hat, da ich ja vorher compilieren muss und den Pfad von arm-elf-gcc im eclipse angeben muss. dieser lautet bei mir: C:\Program Files\yagarto\bin\arm-elf-gcc.exe Und er compiliert einwandfrei. Die Path-Variablen. Ja, da gab es einige Probleme. Angefangen mit dem Compilieren. Jedoch habe ich PATH umgeschrieben, das es dem unter normalem Windows entspricht. Danach ging das Compilieren auch tadelos. Die Verzeichnisse stimmen. Du hast ja auch geschrieben das /cygdrive richtig ist. konnte es in einem Buch auch nachlesen. Warum arm-elf-gdb.exe irgendwelche Dateien oder Pfade brauch, was er sucht, weis ich nicht. eigentlich ist auszuschließen, das das verzeichniss nicht zu finden ist, da es haargenau stimmt. Also findet er die Dateien nicht, aber alle Projektdateien sind doch vom Compilieren dort drin!? Sackgasse ... Danke erstmal ... werde alles nochmal neu anfangen und Yagarto durcharbeiten. MFG Marius
Gast
#782306
Im Debug Dialog Fenster, da wo Du auch die Commands eingibst, unter dem Punkt Source muss der Pfad Deines Projekts eingestellt sein. Wenn da nur unter Default "Absolut File Path" steht, dann klicke auf Add... und füge Dein Projekt hinzu. HTH Jansus
Hey, vielen Dank! :-) Bei mir funzt jetzt alles! Man sollte einfach genauer, konzentrierter lesen und nicht mal schnell eben so ungeduldig rüberfliegen. Danke Leute! Grüße Marius
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.

