Hallo, ich habe mit dem AVR32 Studio ein C Projekt angelegt und ein elf-file erzeugt. Jedoch bekomme ich dieses elf-file auf meinem NGW 100 nicht zum laufen. Hat jemand schon ein unter Windows kompiliertes Projekt auf dem NGW 100 zum laufen bekommen? Gruß Hans
Ja. Was würdest du erwarten was läuft und wie spielst du das elf das board?
Hast du es mit dem avr32-gcc oder mit dem avr32-linux-gcc compiliert? Kommt beim Ausführen eine Meldung wie 'Segmentation Fault'? MfG Mark
Noch ne kurze Zwischenfrage: Arbeitest du mit Linux auf den NGW100 oder direkt ohne OS?
Das NGW kann man nur unter Windows programmieren, wenn man kein Linux drauf laufen hat. Dann kann man die Toolchain nutzen, die Atmel zur Verfügung stellt. Diese Toolchain enthält aber keinen Compiler für Linux-AVR32-Programme. Den bekommt man nur mit dem Buildroot, welches sich aber nur unter Linux kompilieren lässt. Ansonsten würde ich empfehlen eine Virtuelle Maschine unter Windows zu erstellen und dort die Entwicklungsarbeit fürs NGW zu machen. MfG Marius
Hallo, danke für die schnellen antworten. Also ich habe mit avr32-linux-gcc ein einfaches c programm kompiliert. Es dann über die samba Schnittstelle auf das NGW100 kopiert und es mit chmod bearbeitet. Danach wollte ich es ausführen. Die Meldung hieß ungefähr so: "Can´t find test.c" Des Weiteren habe ich mit avr32-gcc kompiliert und das elf-file in ein bin file umgewandelt. Dieses file habe ich direkt über uboot ins ram kopiert und den pc auf die addresse gesetzt. Dieses hat funktioniert. Würde aber gerne die Programme direkt unter Linux ausführen. Gruß Hans
Was hat dir denn der avr32-linux-gcc ausgespuckt? Es sollte eigentlich eine test.elf oder so geben, die musst du dann aufs NGW kopieren und ausführen. "Can't find test.c" ne sehr merkwürdige Fehlermeldung. Hast du wirklich die richtige Datei rüberkopiert? MfG Marius
Ich muss mich entschuldigen Meldung war test.elf nicht .c ... der avr32-linux-gcc hat zuerst eine .elf Datei ausgespuckt die etwa 850kB Größe hatte (lief auch nicht) dann habe ich im AVR32 Studio Umgebung die Segmentierung in der Build Umgebung ausgestellt danach hatte die .elf noch eine größe von 8kB. Welche Einstellungen sollten den in der Build Umgebung für den avr32-linux-gcc vorgenommen werden? mfg Hans
Hallo mit dem avr32-gcc geht das sowieso nicht wenn Linux auf dem NGW installiert ist. Ansonsten muss der Compiler natürlich jeweils zum auf dem AtNGW100 tatsächlich verwendetem Image passen, zum NGW100 im AUSLIEFERUNGSZUSTAND (bei mir von Jan.2009) passend entstand der 'Compiler'(avr23-linux-gcc ++ binutils ++ == 3.x GB)per Anleitung zum Buildroot und make ... base-ngw100-deconfig (oder wie es noch hiess - jedenfalls: base). Zugehöriges Buildroot der Skriptsammlung im AVR Download war das ältere der drei dort vorgefundenen mit No. 221. (die neueren mit 230 gehen notfalls auch, allerdings der Pfad passte da erst garnicht). Das build baute nur bis zum Ende durch wenn vorher alle- wie im HowTo angebenen -Bibliotheken im Linux des Entwicklungssystems installiert waren. Wie ich vor ein paar Tagen zu SuSe10 feststellte, gab es da zwei nicht mehr von oder die waren mitlerweile umbenannt? Wie es sich in anderen Distributionen verhält weiss ich nicht - nach der Anleitung und SuSe10 gings aber irgendwann. Gruss Peter
Dass "test.elf" nicht gefunden wurde, könnte daran liegen, dass du einfach "test.elf" in der Konsole eingegeben hast. Dann sucht Linux allerdings nur im PATH (/usr/bin, /bin und die üblichen Verdächtigen). Wenn du explizit eine Datei aus dem aktuellen Verzeichnis ausführen wollst, musst du ./test.elf in der Konsole eingeben. Ich hoffe das klappt dann soweit. Ansonsten meld dich nochmal. MfG Marius
Danke, hat funktioniert. Nach einigen Segmentation faults habe ich es auch geschafft die LED anzusteuern. Gruß Hans
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.