Forum: Compiler & IDEs AVR Assembler - Linux


von schlc (Gast)


Lesenswert?

Da sich anscheinend in den Bereichen Bereichen nur wenig Linux Nutzer
rumtreiben, stelle ich meine Frage mal hier.

Ich versuche nun schon seit 2 Tagen irgendeinen Assembler unter Linux
zum laufen zu bringen.

Getestet habe ich gavrasm, tavrasm und avra. Ersterer startet garnicht
erst und die letzteren beiden terminieren mit verschiedenen Fehlern.
Ich denke aber, dass es sich hierbei um ein Verständnissproblem
meinerseits handelt.

In dem Quellcode benutze ich .include bla Direktiven, die zu den
Fehlern führen. Wie löse ich dies unter Linux?
Habe mal die .inc Dateien vom AVR Studio unter Win kopiert, dies führt
jedoch auch nur zu fehlern.
Was muss ich beim Schreiben des Codes beachten?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Da du schon in diesem Forum fragst: warum nimmst du nicht einfach den
GNU-Assembler?  Er hat zwar eine andere Pseudo-Op-Syntax als die
anderen Assembler, aber da hat praktisch sowieso jeder seine eigene.
Dafür lässt er sich leicht mit dem C-Präprozessor des Compilers
koppeln, sodass man all die #include und #define Möglichkeiten
desselben zusätzlich zur Verfügung hat.

Der GNU-Assembler ist Bestandteil der GNU binutils für den AVR, kurz
avr-binutils.  Ordentlich gepflegte Linuxe sollten dir das als Paket
mit anbieten (Gentoo, Debian?).  Ansonsten die binutils installieren
und mit --target=avr compilieren.  (Anleitungen dafür gibt's
reichlich
im Netz.)  Am besten gleich noch den AVR-GCC installieren, dann hast
du oben beschriebene Methode mit dem Präprozessor (und kannst bei
Bedarf auch gleich mit C weitermachen).

von schlc (Gast)


Lesenswert?

Problem hat sich erledigt. Hatte die .inc Files aus dem
/Assembler2/Appnotes Ordner des AVR Studios kopiert. Aus dem
Assembler/Appnotes Ordner funktionierts nun.

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.