Hallo! Unter Linux verwendet ich den Assembler avra und bin damit sehr zufrieden. Jetzt würde ich gern das gleiche Programm unter Windows benutzen. Gibt es das schon irgendwo fertig compiliert? Mit "irgendwo" meine ich eine zuverlässige Download-Quelle. Wenn ihr einen anderen Open-Source-AVR-Assembler für die Windows-Kommandozeile wisst, wäre das natürlich eine Alternative... Danke schon mal. :-) Markus
??? Die Frage kommt, wenn überhaupt, meistens anders herum. Für Windows gibt das Original von Atmel (avrasm bzw. avrasm2). Der ist im download des Studios mit dabei, angeblich kann man den aber auch einzeln runterladen (mit der toolchain oder so). Such dich mal durch die Atmel-homepage. Oliver
Markus W. schrieb: > Wenn ihr einen anderen Open-Source-AVR-Assembler für die > Windows-Kommandozeile wisst, wäre das natürlich eine Alternative... Bei den binutils gibt's den GAS, den GNU Assembler. Für AVR damit den avr-as. Vorteile • Host-unabhängig (Linux, Window, MacOS, Solaris...) • Mächtiger als der Atmel-Assembler: •• Man kann Assembler-Funktionen von C (avr-gcc) aus verwenden •• Man kann C-Funktionen von Assembler aus verwenden • Modulares Arbeiten mit Object_Files, Libraries (Assembler, C), etc. • Mächtiger Makro-Prozessor verfügbar • Zusätzlich/alternativ ist natürlich auch der C-Präprozessor verwendbar • Falls gewünscht: Automatisches Erstellen der Vektortabelle und automatisches Eintragen von ISR-Funktionen • Startup-Code falls gewünscht Nachteile • Teilweise andere Syntax als der Atmel-Assembler • Andere Handhabung
Hallo und danke euch beiden! Oliver schrieb: > Für Windows gibt das Original von Atmel (avrasm bzw. avrasm2). > > Der ist im download des Studios mit dabei, angeblich kann man den aber > auch einzeln runterladen (mit der toolchain oder so). Such dich mal > durch die Atmel-homepage. Hallo Oliver, danke für den Hinweis. Ich suche eigentlich ein Open-Source-Programm. Notfalls ginge auch avrasm32.exe, aber nur, falls man das einzeln und legal irgendwo runterladen kann. Dafür habe ich aber noch keine Quelle gefunden. avra hat gegenüber avrasm32 ein paar zusätzliche Funktionen, wäre schon nett, wenn es avra.exe irgendwo gäbe. Johann L. schrieb: > Bei den binutils gibt's den GAS, den GNU Assembler. Für AVR damit > den avr-as. Klingt erstmal gut. > • Teilweise andere Syntax als der Atmel-Assembler > • Andere Handhabung Könnte zum Problem werden, aber wahrscheinlich ließe sich das in den Griff kriegen. Weißt du eine Quelle, von der ich die einzelne Exe (vermutlich dann avr-as.exe) runterladen kann?
Markus W. schrieb: > Weißt du eine Quelle, von der ich die einzelne Exe (vermutlich dann > avr-as.exe) runterladen kann? Einzeln nicht, du brauchst ja ohnehin auch noch den Linker dazu (avr-ld). Entweder als Bestandteil von WinAVR oder als Bestandteil der Atmel AVR Toolchain. Ansonsten kannst du dir avra sicher auch für Win32 compilieren. Das könnte sogar unter Linux gehen, wenn du den MinGW32-Crosscompiler benutzt.
Jörg Wunsch schrieb: > Ansonsten kannst du dir avra sicher auch für Win32 compilieren. Das > könnte sogar unter Linux gehen, wenn du den MinGW32-Crosscompiler > benutzt. Yep, mit minimalen Verrenkungen habe ich ihn unter FreeBSD bauen können. Probier's mal aus.
Jepp. Hab deine Version probiert. Startet zumindest schon mal unter wine.
Ihr seid super! :-) Hab auch grad die avr.exe von Jörg probiert, sie läuft unter Ubuntu 10.04 mit Wine 1.4. Mit Windows werde ich es noch testen. Jörg, darf ich deine Exe weitergeben bzw. zum Download anbieten? Ich nehme an, sie unterliegt sowieso GPL.
Markus W. schrieb: > Jörg, darf ich deine Exe weitergeben bzw. zum Download anbieten? Nein, keinesfalls. Ich habe da einen Virus mit eingebaut. :-) Natürlich kannst du, ist halt ganz normal aus den Quellen compiliert. Wer's nachvollziehen will: das liegt alles im Unterverzeichnis src/ von avra. Allerdings ist das autoconf-Ergebnis dort unvollständig. Wenn man ./configure startet, klagt es über das Fehlen von install-sh, also muss man ./bootstrap nochmal laufen lassen. Danach beschwert es sich noch über fehlende Dateien namens README, NEWS, ChangeLog und AUTHORS. Entweder aus dem übergeordneten Verzeichnis verlinken oder mit touch einfach leere Dateien anlegen (idiotische Gängelei!). Dann kann man configure starten mit:
1 | env CC=mingw32-gcc ./configure --target=mingw32 --host=i386-unknown-freebsd8.2 |
(Eventuell für --host die passenden Werte benutzen, wird aber ziemlich schnuppe sein.) Danach muss man allerdings noch das Makefile editieren. Da steht ein -D drin, das später zu einem Linkerfehler führt, das muss man ändern. Aus:
1 | -DHAVE_MALLOC=0 -Dmalloc=rpl_malloc |
mach:
1 | -DHAVE_MALLOC=1 |
Danach lässt sich alles compilieren. (Natürlich muss man, wie schon geschrieben, den MinGW32-Crosscompiler installiert haben.)
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.