[AVR] GCC: Assembler & Linker

#1509258
Lesenswert?

Falls es kein AVR ist:

für der Assembler in
http://sourceware.org/binutils/docs/as/index.html

und für den Linker in

http://sourceware.org/binutils/docs/ld/index.html


Der Trick ist, nicht dem Hinweis von unserem freundlichen Rolf Magnus zu 
folgen und eben nicht bei GCC sondern bei binutils zu suchen. Darinnen 
sind auch noch andere nützliche Dinge hierzu wie etwa das Make zu 
finden.
Moderator Persönliche Seite #1510105
Lesenswert?

Martin schrieb:

> @Rolf Unbrauchbare Antwort.

Hast du auch geguckt?

http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Overall-Options.html#Overall-Options
(Insbesondere file.s und file.S hier)

http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Assembler-Options.html#Assembler-Options

Es ist nämlich in der Tat gar keine so schlechte Idee, den Assembler
vom Compiler aus zu rufen.  Man hat dann ein einheitliches Aufruf-
Interface sowohl für Assembler- als auch für C-Quellen, und kann auch
die Interruptvektortabelle des C-Frameworks gleich mit nutzen.
Persönliche Seite #1510111
Lesenswert?

http://www.mikrocontroller.net/articles/Beispiel_Makefile
1
# List Assembler source files here.
2
#     Make them always end in a capital .S.  Files ending in a lowercase .s
3
#     will not be considered source files but generated files (assembler
4
#     output from the compiler), and will be deleted upon "make clean"!
5
#     Even though the DOS/Win* filesystem matches both .s and .S the same,
6
#     it will preserve the spelling of the filenames, and gcc itself does
7
#     care about how the name is spelled on its command-line.
8
ASRC =
Gast #1510131
Lesenswert?

Martin schrieb:
> Ist es möglich mit dem GCC einen Assemblertext (ohne C-Quellen) zu
> übersetzen und zu linken? Wenn ja, wo finde ich dazu Informationen?

Macht aber keinen Spass. Das ist kein sehr komfortabler Assembler...
Gast #1510237
Lesenswert?

Jörg Wunsch schrieb:
> Peter Stegemann schrieb:
>
>> Das ist kein sehr komfortabler Assembler...
> Ach?  Was genau fehlt dir eigentlich?

Ich habe den einmal ausprobiert und keine Liste gefuehrt, sorry. Es hat 
mich auch nicht weiter gekuemmert. Ich ging davon aus, dass dessen 
Hauptjob die Uebersetzung von gcc-Output ist, nicht von 
handgeschriebenem Code.

> Komfortabler als der billige Atmel-Absolut-Assembler ist er allemal...

Naja, es gibt fast immer ein Tool, das noch unkomfortabler ist...
Gast #1510450
Lesenswert?

danke!
ja, runterladen allein genügt nicht. hatte es mal installiert und auf 
hinweis meiner prof neuistallieren wollen, das dann aber vergessen. habs 
jetzt getan, da ändert sich aber nichts.

fehlermeldung:
make: Interrupt/Exception caught (code = 0xc00000fd, addr = 0x4217b3)
Build failed with 1 errors and 0 warnings...

ist also nicht sonderlich aufschlussreich, sagt ja nicht, wo der fehler 
liegt(kann auch nicht wie bei VisualStudio drauf doppelklicken). dabei 
frage ich mich, was daran falsch sein soll:

#include  <stdint.h>

main()
{

uint8_t c;

}
Gast #1510466
Lesenswert?

>frage ich mich, was daran falsch sein soll:

An deinem Code? Ist völlig egal.

Der Fehler liegt ganz woanders, WinAVR will nicht, make stürzt ab. Was 
vermutlich daran liegt, daß da mehrere verschiedene Versionen von make 
auf deinem Computer existieren, die Pfade nicht stimmen, und jetzt die 
falsche aufgerufen wird.

Oliver
Gast #1510480
Lesenswert?

Bascom wäre eine Möglichkeit.

Ansonsten mach mal ein Kommandofenster auf, wechsel in den Ordner 
"default" deines Projektes, und tipp da mal "make". Wenn das wieder 
abstürzt, tipp "which make.exe", und berichte, was dann da steht.

Oliver
#1510496
Lesenswert?

Alles deinstallieren.

Händisch das Dateisystem aufräumen, falls bei der Deinstallation noch 
irgendetwas übrig geblieben sein sollte.

Händisch die Registry aufräumen

Alles noch einmal neu installieren.

Geht oft schneller als da stundenlang nach dem einen fehlerhaftem 
Eintrag zu fahnden, der bei der vorhergehenden Deinstallation übrig 
blieb.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren