mikrocontroller.net

Forum: Compiler & IDEs AVRGCC und ATTiny26


Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

unterstützt der GCC (C-Compiler) den ATTiny26 in der aktuellen Version? 
Ich konnte in den Docs auf www.gnu.org leider keinen Hinweis finden.

Matthias

Autor: Sascha Weitkunat (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 ;)

Autor: Dieter Brüggemann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Laut

http://savannah.nongnu.org/download/avr-libc/doc/a...

kein Problem

MFG Dieter

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Option heißt auch nicht mcu= sondern -mmcu=.  (-m leitet
eine »machine specific option« ein, also eine, die nur für
in diesem Falle die AVR-Version des gcc gültig ist.)

Autor: MiCHEL (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
warum suse? wenn linux dann .... debian!

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehr konstruktiv, und völlig zum Thema passend.  Darf ich jetzt
auch mit dem Unix meiner Wahl hier werben?  Alles andere ist
doch ohnehin Müll, nicht wahr?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Ich weiß wie die Option heißt nur heißt die Fehlermeldung unter Linux 
eben so. Das -m läßt der GCC wahrscheinlich bei der Fehlermeldung weg.

Matthias

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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).

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

danke. Tut.


Matthias

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.