AVRGCC und ATTiny26

Gast #39699
Lesenswert?

Also ich weiss nicht ganz genau ob ich die neuste Version drauf habe, 
aber da eine "iotn26.h" existiert wird dieser wohl auch unterstützt, 
rausgenommen werden sie ihn wohl kaum haben ;)
Gast #39701
Lesenswert?

Hi

danke. Dann sind die GNU-Docs einfach ein bischen hinterher.

BTW:
Ich bin grade dabei auf Linux (z.Z. eine Suse 8.2) umzusteigen. Dort 
meldet mir aber der GCC (3.3 20030226 prerelease) das er die Option 
mcu=atmega8 nicht kennt. Was soll das den? Den Umweg über wine und 
WINAVR möchte ich dann doch nicht gehen ;-)

Matthias
Gast #39706
Lesenswert?

Ach so, hmm, ich habe hier mal eine unbekannte MCU-Angabe
probiert, da bekomme ich:

% avr-gcc -mmcu=foo /tmp/foo.c
unknown MCU `foo' specified
Known MCU names:
   avr2
   at90s2313
   at90s2323
   at90s2333
   at90s2343
   attiny22
   attiny26
   at90s4414
   at90s4433
   at90s4434
   at90s8515
   at90c8534
   at90s8535
   at86rf401
   avr3
   atmega103
   atmega603
   at43usb320
   at43usb355
   at76c711
   avr4
   atmega8
   atmega8515
   atmega8535
   avr5
   atmega16
   atmega161
   atmega162
   atmega163
   atmega169
   atmega32
   atmega323
   atmega64
   atmega128
   at94k
   avr1
   at90s1200
   attiny11
   attiny12
   attiny15
   attiny28
/tmp/foo.c:1: error: MCU `foo' supported for assembler only

Was bekommst Du denn genau?  Das richtige Compiler-Frontend
wird auch aufgerufen (avr-gcc -v ...)?  Nicht dass er den
gcc fuer das Hostsystem aufruft...
Gast #39707
Lesenswert?

Hi

ich glaub ich blamier mich jetzt aber:
D.h. der ganz normale GCC der bei SUSE dabei ist kann keine AVR-Binaries 
erzeugen? Ich hatte die (küne?) Vermutung das das -m das Target 
entsprechend umschaltet.

Matthias
Gast #39708
Lesenswert?

Uh, noe, der kann das nicht.  Du brauchst eine AVR Toolchain,
bestehend aus:

. avr-binutils
. avr-gcc
. avr-libc

binutils und gcc sind dabei die normalen GNU-Quellen, aber
jeweils mit --target avr konfiguriert und danach gebaut.
Beim Installieren setzen beide ihren jeweiligen Programmnamen
ein avr- voran (aus ld wird also avr-ld, aus gcc avr-gcc usw.),
um sie so von den Hostsystem-Komponenten zu unterscheiden.

avr-libc ist komplett separat, siehe
http://savannah.nongnu.org/projects/avr-libc/

Fuer all den Kram gibt's dort wohl auch RPMs, die mehr oder
weniger gut fuer Dich funktionieren koennen (je nach den
uebrigen shared libs, wobei die avr-libc ja komplett unabhaengig
von den shared libs des Hostsystems ist, da sie nur AVR
Komponenten enthaelt).

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