Datum:
Ich möchte in die ARM-Programmierung einsteigen und versuche daher gerade mir die Umgebung unter Windows XP zusammenzubauen. Ich habe mit oben genannter Konfiguration ein paar Probleme mit einem Blink-Projekt und hoffe, dass mir jemand weiterhelfen kann. Ich habe "ARM Windows GCC (GNUARM, WinARM)" als toolchain eingestellt und unter Settings -> Command und unter Discovery Options jeweils "arm-none-eabi-..." statt "arm-elf-..." eingetragen. Unter Environment habe ich noch eine PATH-Variable mit den Pfaden zu GNU_Tools_ARM_Embedded\4.6_2012q1\bin und den YAGARTO-Tools angelegt. Ich denke das müsste soweit passen. Wenn ich nun das Projekt schließe und wieder öffne bekomme ich immer folgende Warnings:
Error launching external scanner info generator (arm-elf-gcc -E -P -v -dD D:/WinARM/workspace/.metadata/.plugins/org.eclipse.cdt.make.core /specs.c) _template_gnuarm [Discovery Options] page in project properties C/C++ Problem |
Program 'arm-elf-gcc' is not found in $PATH _template_gnuarm [Discovery >Options] page in project properties C/C++ Problem |
In den Discovery Options ist aber nirgends was von arm-elf-gcc eingetragen, da ich das ja durch arm-none-eabi-gcc ersetzt habe. Wenn ich dann Build anklicke kommen einige Fehler im Stile von
'GPIO_Mode_OUT' undeclared (first use in this function) main.c /_template_gnuarm/src line 77 C/C++ Problem |
make: *** [src/main.o] Error 1 _template_gnuarm C/C++ Problem |
request for member 'GPIO_Mode' in something not a structure or union main.c /_template_gnuarm/src line 77 C/C++ Problem |
und obige Warnungen verschwinden und dafür gibt es neue Warnungen à la
implicit declaration of function 'GPIO_Init' [-Wimplicit-function- declaration] main.c /_template_gnuarm/src line 78 C/C++ Problem |
Jemand eine Idee was hier das Problem/die Probleme sein könnte/n und wo ich suchen muss?
Datum:
Hallo, dieses Problem mit veralteten Pfaden hatte ich auch schon mal. Editiere, oder besserr, lösche einfach die Datei <Projektname>.sc im Pfad ...\.metadata\.plugins\..... (danach suchen) Die Datei wird bei einem Neustart von ECLIPSE wieder angelegt und veraltete Pfade sind dann weg. Gruss Stefan
Datum:
Danke für den Tipp. Leider hat es nichts gebracht. Die Meldungen kommen es nach wie vor. Hast du o.g. Konfiguration am Laufen? Oder sonst jemand der das liest? Das Verhalten mit den ersten beiden Warnungen habe ich auch wenn ich CodeSourcery als Toolchain nutze, aber der Rest funktioniert damit immerhin. Das finde ich komisch.
Datum:
Micha schrieb: > Hast du o.g. Konfiguration am Laufen? Oder sonst jemand der das liest? Also speziell Eclipse mit https://launchpad.net/gcc-arm-embedded/4.6/2011-q4-major meine ich.
Datum:
Ohne jetzt dein dein Problem lösen direkt zu können, aber warum hast du GNU-ARM und Yagarto installiert? Yagarto enthält ja auch eine vollständige toolchain, und das gnu-arm-plugin für Eclipse funktioniert damit bei mir problemlos. Ganz automatisch, ohne überhaupt irgend etwas von Hand einzustellen. Oliver
Datum:
Oliver S. schrieb: > aber warum hast du GNU-ARM und Yagarto installiert? Naja ich habe ja nicht die Toolchain von Yagarto installiert sondern nutze nur die Tools wie make, rm, usw., da die bei gcc-arm-embedded nicht dabei sind. gcc-arm-embedded hätte mir prinzipiell am besten gefallen, da es quasi vom Entwickler selbst kommt und am aktuellsten zu sein scheint (wobei fraglich ist ob die Aktualität gut ist).
Datum:
Die Ursache für die ersten beiden Warnungen habe ich gefunden: unter Discovery Options war bei einer inaktiven Konfiguration arm-elf-gcc statt arm-none-eabi-gcc eingetragen. Die restlichen Probleme habe ich mit der gcc-arm-embedded-Toolchain genauso wie mit der Yagarto-Toolchain (der kompletten, nicht nur den Tools wie oben geschrieben). Anbei das Projekt (Blink-Projekt für STM32F4Discovery). Vielleicht kann das bitte jemand mit Eclipse/gcc-arm-embedded oder Eclipse/Yagarto testen und rückmelden ob dieselben Fehler/Warnungen nach dem build auftreten. (Mod: Anh. zu diesem Beitr. entf., akt. Anh. s.u.)
Datum:
Angehängte Dateien:Anbei nochmal das Projekt, da ich noch ein paar Fehlerchen gefunden habe.
Datum:
Hat sich erledigt, denn das Problem saß wie üblich vor dem Rechner: ich hatte ein paar nötige Symbole nicht definiert. Jetzt funktioniert es mit gcc-arm-embedded. Zwar nicht mit Yagarto, aber ist mir nicht wichtig.