Hallo, entgegen der Doku scheint meine Toolchain den ATtiny13 nicht zu wollen (Fatal error: unknown MCU: attiny13). Eine iotn13.h ist aber vorhanden und wird von der io.h aus auch 'included' (sofern die Defines stimmen). Was könnte ich übersehen haben? gcc=4.1.1 libc=1.4.5(19:43:11 13.10.2006) binutils=2.15 (13:20:58 26.01.2007) gcc --target-help: Known MCU names: avr1 avr2 avr3 avr4 avr5 at90s1200 attiny10 attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 at90s2343 attiny22 attiny26 at90s4433 at90s4414 at90s4434 at90s8515 at90s8535 at90c8534 at86rf401 atmega603 atmega103 at43usb320 at43usb355 at76c711 atmega8 atmega83 atmega85 atmega8515 atmega8535 atmega16 atmega161 atmega162 atmega163 atmega169 atmega32 atmega323 atmega64 atmega128 at94k no emulation specific options. avr-as --target-help Known MCU names: avr1 avr2 avr3 avr4 avr5 at90s1200 attiny10 attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 at90s2343 attiny22 attiny26 at90s4433 at90s4414 at90s4434 at90s8515 at90s8535 at90c8534 at86rf401 atmega603 atmega103 at43usb320 at43usb355 at76c711 atmega8 atmega83 atmega85 atmega8515 atmega8535 atmega16 atmega161 atmega162 atmega163 atmega169 atmega32 atmega323 atmega64 atmega128 at94k Grüße, Freakazoid
> entgegen der Doku scheint meine Toolchain den ATtiny13 nicht zu wollen
^^^^^^^^^^^^^^^
Welche?
??? avr-gcc toolchain: avr-gcc, avr-binutils, avr-libc Versionen: Hat er doch oben geschrieben.
Das soll wirklich ein GCC 4.1.1 sein? Der muss den ATtiny13 aber kennen. Der derzeitige "newdevices" patch für 4.1.1 fügt dann zusätzlich noch allerlei neuere Controller hinzu. Die binutils solltest du dringlichst auf 2.17 oder 2.17.1 bringen.
Hi, hatte mir schon gedacht daß Du früher oder später drauf antwortest. Danke dafür ;-) > Das soll wirklich ein GCC 4.1.1 sein? Using built-in specs. Target: avr Configured with: /var/tmp/cross/avr/portage/gcc-4.1.1/work/gcc-4.1.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/avr/gcc-bin/4.1.1 --includedir=/usr/lib/gcc/avr/4.1.1/include --datadir=/usr/share/gcc-data/avr/4.1.1 --mandir=/usr/share/gcc-data/avr/4.1.1/man --infodir=/usr/share/gcc-data/avr/4.1.1/info --with-gxx-include-dir=/usr/lib/gcc/avr/4.1.1/include/g++-v4 --host=i686-pc-linux-gnu --target=avr --build=i686-pc-linux-gnu --disable-altivec --disable-nls --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c --enable-shared --disable-threads --enable-__cxa_atexit Thread model: single gcc version 4.1.1 (Gentoo 4.1.1) /usr/libexec/gcc/avr/4.1.1/cc1 -quiet -v help-dummy -quiet -dumpbase help-dummy -auxbase help-dummy -version --target-help -o /tmp/ccPETX2m.s Target specific options: [Bla, Bla] Known MCU names: avr1 avr2 avr3 avr4 avr5 at90s1200 attiny10 attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 at90s2343 attiny22 attiny26 at90s4433 at90s4414 at90s4434 at90s8515 at90s8535 at90c8534 at86rf401 atmega603 atmega103 at43usb320 at43usb355 at76c711 atmega8 atmega83 atmega85 atmega8515 atmega8535 atmega16 atmega161 atmega162 atmega163 atmega169 atmega32 atmega323 atmega64 atmega128 at94k > Der muss den ATtiny13 aber kennen. Seh ich auch so. Deswegen ja auch 'entgegen' der Doku. > Die binutils solltest du dringlichst auf 2.17 oder 2.17.1 bringen. Wieso? Die 2.15 würde es doch auch tun, oder? Ich kanns ja mal versuchen ... Grüße, Freakazoid
Verwirrter schrieb: > ??? > avr-gcc toolchain: avr-gcc, avr-binutils, avr-libc > Versionen: Hat er doch oben geschrieben. Schon klar. Ich wollte wissen, wer die Toolchain übersetzt (und damit konfiguriert) hat bzw. um welche Toolchain es sich genau handelt. Du kannst z.B. die AVR GCC Toolchain mit GCC 4.1.1 für Windows z.B. in der WinAVR Geschmacksrichtung bekommen oder als Atman AVR oder als ... Ich entnehme der Antwort von Andre an Jörg, dass es sich wahrscheinlich um eine Selbstübersetzung unter Gentoo/Linux handelt.
So. avr-binutils sind jetzt '2.17.50.0.12 20070128' Klappt trotzdem nicht. @Stefan: > Ich entnehme der Antwort von Andre an Jörg, dass es sich wahrscheinlich > um eine Selbstübersetzung unter Gentoo/Linux handelt. Bestätigt. Bei den binutils isses ein 'emerge -uva =cross-avr/binutils-2.17.50.0.12' und bei dem gcc ein 'crossdev --target avr-unknown-linux-gnu'. Könnte man den gcc denn so übersetzen, daß bestimmte Devices innerhalb eines Targets nicht unterstützt werden? Grüße, Freakazoid
Hast du nach der Neuübersetzung der binutils auch den gcc und die libc nochmal neu übersetzt?
> Könnte man den gcc denn so übersetzen, daß bestimmte Devices innerhalb > eines Targets nicht unterstützt werden? Voraub: Bin Gentoo-Nichtkenner. Aber mich macht das 'crossdev --target avr-unknown-linux-gnu' stutzig. In unserem Wiki (allerdings bei gcc-3.4.6!) ist da ein anderer Aufruf: 'crossdev --target avr'. http://www.mikrocontroller.net/articles/AVR_Eclipse#Unter_Linux:_.28Gentoo.29 Dito beim CCC-Zürich 'crossdev -t avr' http://chaostreff-zh.tuners.ch/Geekclock_Workshop Dito bei Arduino 'crossdev -t avr' http://www.arduino.cc/playground/Linux/Gentoo Deine Variante findet man aber auch. Wobei ich gemäß http://www.gentoo.org/proj/en/base/embedded/cross-development.xml die Kombination avr-unknown-linux-gnu nicht wählen würde. Ggf. müsste man noch tiefer ins Netz reinsuchen, wie das Crosscompile durchzuführen ist oder einfach mal die andere Variante probieren. Die andere Aufgabe wäre natürlich die Sourcen und die crossdev Skripte zu kontrollieren, ob die aus dem aktuellen Branch stammen und speziell ob die avr25 Architektur, die mit gcc Revision 114758 eingeführt wurde, bekannt ist. http://gcc.gnu.org/viewcvs/trunk/gcc/config/avr/avr.c?view=log Deinem gcc/as fehlen ja noch mehr aus dieser speziellen avr25 Architektur sowie die avr25 MCU selbst. Ich finde im Netz crossdev Skripte mit CROSS_CFLAGS="-mmcu=avr2", um die Library zu machen, aber keine mit avr25.
Hm. Plötzlich geht es ;-))) Naja. Etwas habe ich schon gemacht: crossdev --target avr --gcc 4.1.1 --binutils 2.17.50.0.12 Ein klein wenig rumgerödel (also zu kurz für eine Neuübersetzung. Vermutlich nur anpassen der Profile) und plötzlich ging es. Laut dem avr-as und dem avr-gcc angeblichimmer noch kein Support, aber eine Beispieldatei wird mit -mmcu=attiny13 tadellos übersetzt und gelinkt. Danke für die Hilfe. Grüße, Freakazoid
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.