Moin! Nachdem mir mein Flash beim 2313 so langsam ausgegangen ist (ich quäle den schon ganz schön) habe ich mit Glück bei Pollin tiny4313 beschaffen können. Ich wollt das Programm nun für den 4313 kompilieren (sind ja 100% kompatibel bis auf die unterschiedliche Speichergröße) Leider kennt der AVR-GCC den tiny4313 nicht. Kann ich einfach für 2313 kompilieren und es funktioniert trotzdem (auch mit über 2KB)? Oder muss ich die Headerdateien vom 2313 kopieren und anpassen (oder gibt es die fertig)? LG :)
J. W. schrieb: > Leider kennt der AVR-GCC den tiny4313 nicht. Dann hast du dich bei der MCU-Angabe wohl irgendwie vertippt.
Leider nicht. Das Problem ist auch bekannt. Für avrdude habe ich den entsprechenden Abschnitt in der avrdude.conf schon eingefügt. (gibts im Netz verteilt, unter anderem bei nongnu) Laut diesem Artikel kann der avr-gcc das auch (in einigen Versionen) Ich habe jetzt die 4.7 (vom Nov 2011) installiert - damit gehts nicht. Welche Version nutzt du denn? Ich arbeite unter Linux (Suse 11.4) Ist das den eine Frage des gcc oder der avr-libc, ich denke erstes, oder? LG :)
J. W. schrieb: > Laut diesem Artikel kann der avr-gcc das auch (in einigen Versionen) Ich > habe jetzt die 4.7 (vom Nov 2011) installiert - damit gehts nicht. *Was* geht denn damit nicht? Handbücher und XML-Beschreibung für ATtiny4313 sind falsch: sie listen SP als 8-Bit Register, was nicht korrekt ist. Das Problem wurde erst 12/2011 erkannt und behoben: http://gcc.gnu.org/viewcvs?view=revision&revision=182053
Johann L. schrieb: > *Was* geht denn damit nicht? Er (er)kennt den MCU-Typ nicht und macht dem entsprechend gar nix: > Fatal error: unknown MCU: attiny4313 Es gibt auch keinen anderen MCU-Typ dafür. LG :) PS: Habe avr-gcc-47-20111105-4.7_20111105-6.1.x86_64.rpm installiert.
Ich hab avr-gcc aus den (K)ubuntu 11.10 paketen mit eclipse in Benutzug und der kompiliert mein Projekt (welches den flash zu 51% füllt (dewegen auch der 4313 statt 2313) ganz normal...
Update: Ich habe die entsprechende Header-Datei bei mir gefunden. Wie bekomme ich ihn dazu, die auch zu nutzen? Habe auch schon -mmcu=tn4313 probiert Liegt in /opt/cross/avr/avr/include/avr und heisst iotn4313.h Direkter Include anstelle von <avr/io.h> funktioniert nicht. LG :)
Das ganze rpm Zeigs sagt mit nix... Ich hab mal das Beispiel aus Beitrag "Re: 64Bit Senden, funktioniert zwar, aber wie kann mans effizienter gestallten?" mit 4.7 für ATtiny4313 compilier. Geht problemlos. Wie an der Ausgabe zu erkennen, wurde -mmcu=attiny4313 gesetzt. An den Optionen wurde m.W. auch nix geändert.
1 | .file "foo.c" |
2 | __SP_H__ = 0x3e |
3 | __SP_L__ = 0x3d |
4 | __SREG__ = 0x3f |
5 | __RAMPZ__ = 0x3b |
6 | __tmp_reg__ = 0 |
7 | __zero_reg__ = 1 |
8 | ; GNU C (GCC) version 4.7.0 20120102 (experimental) (avr) |
9 | ; compiled by GNU C version 3.4.5 (mingw-vista special r2), GMP version 4.3.2, MPFR version 2.4.2, MPC version 0.8.2 |
10 | ; GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32702 |
11 | ; options passed: -fpreprocessed foo.i -mmcu=attiny4313 -Os -std=gnu99 |
12 | ; -fverbose-asm -fno-move-loop-invariants |
13 | ; options enabled: -fauto-inc-dec -fbranch-count-reg -fcaller-saves |
14 | ; -fcombine-stack-adjustments -fcommon -fcompare-elim -fcprop-registers |
15 | ; -fcrossjumping -fcse-follow-jumps -fdebug-types-section -fdefer-pop |
16 | ; -fdevirtualize -fearly-inlining -feliminate-unused-debug-types |
17 | ; -fexpensive-optimizations -fforward-propagate -ffunction-cse -fgcse |
18 | ; -fgcse-lm -fgnu-runtime -fguess-branch-probability -fident |
19 | ; -fif-conversion -fif-conversion2 -findirect-inlining -finline |
20 | ; -finline-atomics -finline-functions -finline-functions-called-once |
21 | ; -finline-small-functions -fipa-cp -fipa-profile -fipa-pure-const |
22 | ; -fipa-reference -fipa-sra -fira-share-save-slots |
23 | ; -fira-share-spill-slots -fivopts -fkeep-static-consts |
24 | ; -fleading-underscore -fmath-errno -fmerge-constants |
25 | ; -fmerge-debug-strings -fomit-frame-pointer -foptimize-register-move |
26 | ; -foptimize-sibling-calls -fpartial-inlining -fpeephole -fpeephole2 |
27 | ; -fprefetch-loop-arrays -freg-struct-return -fregmove -freorder-blocks |
28 | ; -freorder-functions -frerun-cse-after-loop |
29 | ; -fsched-critical-path-heuristic -fsched-dep-count-heuristic |
30 | ; -fsched-group-heuristic -fsched-interblock -fsched-last-insn-heuristic |
31 | ; -fsched-rank-heuristic -fsched-spec -fsched-spec-insn-heuristic |
32 | ; -fsched-stalled-insns-dep -fshow-column -fshrink-wrap -fsigned-zeros |
33 | ; -fsplit-ivs-in-unroller -fsplit-wide-types -fstrict-aliasing |
34 | ; -fstrict-overflow -fstrict-volatile-bitfields -fthread-jumps |
35 | ; -ftoplevel-reorder -ftrapping-math -ftree-bit-ccp |
36 | ; -ftree-builtin-call-dce -ftree-ccp -ftree-ch -ftree-copy-prop |
37 | ; -ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse |
38 | ; -ftree-forwprop -ftree-fre -ftree-loop-if-convert -ftree-loop-im |
39 | ; -ftree-loop-ivcanon -ftree-loop-optimize -ftree-parallelize-loops= |
40 | ; -ftree-phiprop -ftree-pre -ftree-pta -ftree-reassoc -ftree-scev-cprop |
41 | ; -ftree-sink -ftree-slp-vectorize -ftree-sra -ftree-switch-conversion |
42 | ; -ftree-tail-merge -ftree-ter -ftree-vect-loop-version -ftree-vrp |
43 | ; -funit-at-a-time -fverbose-asm -fzero-initialized-in-bss |
44 | |
45 | .text |
46 | .global send |
47 | .type send, @function |
48 | send: |
49 | push r28 ; |
50 | push r29 ; |
51 | /* prologue: function */ |
52 | /* frame size = 0 */ |
53 | /* stack size = 2 */ |
54 | .L__stack_usage = 2 |
55 | mov r28,r24 ; leds, leds |
56 | ldi r29,lo8(8) ; ivtmp.3, |
57 | .L4: |
58 | cpi r28,lo8(8) ; leds, |
59 | brlo .L2 ; , |
60 | subi r28,lo8(-(-8)) ; leds, |
61 | ldi r24,0 ; val |
62 | rjmp .L3 ; |
63 | .L2: |
64 | ldi r18,lo8(1) ; tmp54, |
65 | ldi r19,0 ; |
66 | rjmp 2f |
67 | 1: |
68 | lsl r18 ; tmp58 |
69 | 2: |
70 | dec r28 ; leds |
71 | brpl 1b |
72 | mov r24,r18 ; val, tmp58 |
73 | ldi r28,0 ; leds |
74 | .L3: |
75 | subi r24,lo8(-(-1)) ; , |
76 | rcall SPI_MasterTransmit ; |
77 | subi r29,lo8(-(-1)) ; ivtmp.3, |
78 | brne .L4 ; , |
79 | /* epilogue start */ |
80 | pop r29 ; |
81 | pop r28 ; |
82 | ret |
83 | .size send, .-send |
84 | .ident "GCC: (GNU) 4.7.0 20120102 (experimental)" |
Was ist denn bei dir die Ausgabe, wenn zusätzlich -v gesetzt wird?
hp-freund schrieb: > Welche Typen kennt dein avr-gcc? Known MCU names: avr1 avr2 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7 at90s1200 attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 at90s2343 attiny22 attiny26 at90s4414 at90s4433 at90s4434 at90s8515 at90c8534 at90s8535 attiny13 attiny13a attiny2313 attiny24 attiny44 attiny84 attiny25 attiny45 attiny85 attiny261 attiny461 attiny861 attiny43u attiny48 attiny88 at86rf401 at43usb355 at76c711 atmega103 at43usb320 attiny167 at90usb82 at90usb162 atmega8 atmega48 atmega48p atmega88 atmega88p atmega8515 atmega8535 atmega8hva at90pwm1 at90pwm2 at90pwm2b at90pwm3 at90pwm3b atmega16 atmega161 atmega162 atmega163 atmega164p atmega165 atmega165p atmega168 atmega168p atmega169 atmega169p atmega32 atmega323 atmega324p atmega325 atmega325p atmega3250 atmega3250p atmega328p atmega329 atmega329p atmega3290 atmega3290p atmega406 atmega64 atmega640 atmega644 atmega644p atmega645 atmega649 atmega6450 atmega6490 atmega16hva at90can32 at90can64 at90pwm216 at90pwm316 atmega16u4 atmega32c1 atmega32m1 atmega32u4 atmega32u6 at90usb646 at90usb647 at94k atmega128 atmega1280 atmega1281 atmega1284p atmega128rfa1 at90can128 at90usb1286 at90usb1287 atmega2560 atmega2561 atxmega16a4 atxmega16d4 atxmega32d4 atxmega32a4 atxmega64a3 atxmega64a1 atxmega128a3 atxmega256a3 atxmega256a3b atxmega128a1 Vielleicht sollte ich grundsätzlich kurz anmerken, dass das Projekt in C verfasst ist Johann L. schrieb: > Was ist denn bei dir die Ausgabe, wenn zusätzlich -v gesetzt wird? Ohje: avr-gcc-47 -mmcu=attiny4313 -Os -v -o vitrinencontroller.o vitrinencontroller.c ->
1 | Using built-in specs. |
2 | COLLECT_GCC=avr-gcc-47 |
3 | COLLECT_LTO_WRAPPER=/opt/cross/avr/lib64/gcc/avr/4.7.0/lto-wrapper |
4 | Target: avr |
5 | Configured with: ../gcc-4.7-20111105/configure -v --prefix=/opt/cross/avr --exec-prefix=/opt/cross/avr --libdir=/opt/cross/avr/lib64 --libexecdir=/opt/cross/avr/lib64 --mandir=/opt/cross/avr/share/man --infodir=/opt/cross/avr/share/info --with-gnu-ld --with-gnu-as --target=avr --enable-languages=c,c++ --program-prefix=avr- --program-suffix=-47-20111105 --with-sys-root=/opt/cross/avr --disable-nls --disable-libssp --with-dwarf2 --with-ppl --with-cloog |
6 | Thread model: single |
7 | gcc version 4.7.0 20111105 (experimental) (GCC) |
8 | COLLECT_GCC_OPTIONS='-mmcu=attiny4313' '-Os' '-v' '-o' 'vitrinencontroller.o' |
9 | /opt/cross/avr/lib64/gcc/avr/4.7.0/cc1 -quiet -v -imultilib avr25 vitrinencontroller.c -quiet -dumpbase vitrinencontroller.c -mmcu=attiny4313 -auxbase vitrinencontroller -Os -version -o /tmp/ccfMW9TH.s |
10 | GNU C (GCC) version 4.7.0 20111105 (experimental) (avr) |
11 | compiled by GNU C version 4.5.1 20101208 [gcc-4_5-branch revision 167585], GMP version 4.3.1, MPFR version 2.4.1, MPC version 0.8.2 |
12 | GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 |
13 | ignoring nonexistent directory "/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/sys-include" |
14 | #include "..." search starts here: |
15 | #include <...> search starts here: |
16 | /opt/cross/avr/lib64/gcc/avr/4.7.0/include |
17 | /opt/cross/avr/lib64/gcc/avr/4.7.0/include-fixed |
18 | /opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/include |
19 | End of search list. |
20 | GNU C (GCC) version 4.7.0 20111105 (experimental) (avr) |
21 | compiled by GNU C version 4.5.1 20101208 [gcc-4_5-branch revision 167585], GMP version 4.3.1, MPFR version 2.4.1, MPC version 0.8.2 |
22 | GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 |
23 | Compiler executable checksum: 7be667537fcf464e6c82afe74c330331 |
24 | COLLECT_GCC_OPTIONS='-mmcu=attiny4313' '-Os' '-v' '-o' 'vitrinencontroller.o' |
25 | /opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/bin/as -v -mmcu=attiny4313 -o /tmp/ccYThXke.o /tmp/ccfMW9TH.s |
26 | |
27 | GNU assembler version 2.19.1 (avr) using BFD version (GNU Binutils) 2.19.1 + coff-avr-patch (20050630) |
28 | Known MCU names: |
29 | avr1 avr2 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 |
30 | avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7 at90s1200 |
31 | attiny11 attiny12 attiny15 attiny28 at90s2313 at90s2323 at90s2333 |
32 | at90s2343 attiny22 attiny26 at90s4414 at90s4433 at90s4434 at90s8515 |
33 | at90c8534 at90s8535 attiny13 attiny13a attiny2313 attiny24 attiny44 |
34 | attiny84 attiny25 attiny45 attiny85 attiny261 attiny461 attiny861 |
35 | attiny43u attiny48 attiny88 at86rf401 at43usb355 at76c711 atmega103 |
36 | at43usb320 attiny167 at90usb82 at90usb162 atmega8 atmega48 atmega48p |
37 | atmega88 atmega88p atmega8515 atmega8535 atmega8hva at90pwm1 at90pwm2 |
38 | at90pwm2b at90pwm3 at90pwm3b atmega16 atmega161 atmega162 atmega163 |
39 | atmega164p atmega165 atmega165p atmega168 atmega168p atmega169 |
40 | atmega169p atmega32 atmega323 atmega324p atmega325 atmega325p atmega3250 |
41 | atmega3250p atmega328p atmega329 atmega329p atmega3290 atmega3290p |
42 | atmega406 atmega64 atmega640 atmega644 atmega644p atmega645 atmega649 |
43 | atmega6450 atmega6490 atmega16hva at90can32 at90can64 at90pwm216 |
44 | at90pwm316 atmega16u4 atmega32c1 atmega32m1 atmega32u4 atmega32u6 |
45 | at90usb646 at90usb647 at94k atmega128 atmega1280 atmega1281 atmega1284p |
46 | atmega128rfa1 at90can128 at90usb1286 at90usb1287 atmega2560 atmega2561 |
47 | atxmega16a4 atxmega16d4 atxmega32d4 atxmega32a4 atxmega64a3 atxmega64a1 |
48 | atxmega128a3 atxmega256a3 atxmega256a3b atxmega128a1 |
49 | Assembler messages: |
50 | Fatal error: unknown MCU: attiny4313 |
LG :)
Aha. Der Compiler kann also attiny4313, aber der Assembler (avr-as) hingegen nicht! Du brauchst eine weniger angestaubte Version der binutils, etwa 2.21. Ein segmentation fault in 2.22 (PR12161) ist seit Anfang Januar behoben, aber dieser Fix ist m.W. noch nicht releast. http://sourceware.org/bugzilla/show_bug.cgi?id=12161#c17
Ich habe binutils 2.21 und avr-binutils 2.19 installiert. Kreige leider auch keine neueren Versionen übers Repo. Woraus schliesst du, dass es nicht am Compiler liegt? Ich fange so langsam an zu verzweifeln... ;) LG :)
Daran: > Assembler messages: > Fatal error: unknown MCU: attiny4313 Und weil der Assembler gestartet wird, was bei einem Compilerfehler nicht der Fall ist, siehe > opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/bin/as -v -mmcu=atti ny4313 -o /tmp/ccYThXke.o /tmp/ccfMW9TH.s Mit -save-temps bekommst du auch das Assembler-File vom Compiler: vitrinencontroller.s binutils 2.21 nutzen dir nix. Es sei denn, du willst ein Programm für deinen Rechner übersetzen... Es müssen schon die avr-binutils sein.
Johann L. schrieb: > binutils 2.21 nutzen dir nix. Es sei denn, du willst ein Programm für > deinen Rechner übersetzen... > > Es müssen schon die avr-binutils sein. Hast du einen Tipp für mich, wo ich die entweder als *.rpm zur Installation finde, oder aber wo ich den src-Code beziehen kann und wie ich dann installieren muss? Zumindest weiß ich jetzt schonmal, wo das Problem liegt, klasse! LG :)
Die configure-Optionen für binutils sind leider nicht angegeben, aber von dem was oben steht sollte > --target=avr --prefix=/opt/cross/avr passen. Also eigenes Build-Verzeichnis machen und von dort aus > <PATH_TO_BINUTILS>/configure --target=avr --prefix=/opt/cross/avr > make > make install (als Ruth) http://ftp.gnu.org/gnu/binutils/
Johann L. schrieb: > Die configure-Optionen für binutils sind leider nicht angegeben, aber > von dem was oben steht sollte > >> --target=avr --prefix=/opt/cross/avr > > passen. Und evtl. noch --disable-nls wenn man keine Fehlermeldungen in Khmer, Sanskrit oder Kisuaheli braucht.
Ich probier das die nächsten Tage. Momentan Klausuren-Stress ;) Danke soweit, LG :)
hp-freund schrieb: > http://www.mikrocontroller.net/articles/AVR_und_Linux Du scheinst ein Vorherseher zu sein :p Im Repo findet sich seit dem 7.2. die Version 2.22 der avr-binutils als rpm: http://download.opensuse.org/repositories/CrossToolchain:/avr/openSUSE_11.4/x86_64/cross-avr-binutils-2.22-1.1.x86_64.rpm Ich geh dann mal installieren LG :)
J. W. schrieb: > Im Repo findet sich seit dem 7.2. die Version 2.22 der avr-binutils als > rpm: Das habe ich als Reaktion auf diesen Thread dorthin gepackt. :) Ich bin allerdings noch nicht groß zum Testen gekommen und bin deshalb an Feedback interessiert...
Schade: bekomme jetzt folgende Ausgabe:
1 | avr-gcc-47 -mmcu=attiny4313 -Os -v -o vitrinencontroller.o vitrinencontroller.c (im Verzeichnis: /home/jw-lighting/Dokumente/avrproj/thwjugend_playmobil) |
2 | Using built-in specs. |
3 | COLLECT_GCC=avr-gcc-47 |
4 | COLLECT_LTO_WRAPPER=/opt/cross/avr/lib64/gcc/avr/4.7.0/lto-wrapper |
5 | Target: avr |
6 | Configured with: ../gcc-4.7-20111105/configure -v --prefix=/opt/cross/avr --exec-prefix=/opt/cross/avr --libdir=/opt/cross/avr/lib64 --libexecdir=/opt/cross/avr/lib64 --mandir=/opt/cross/avr/share/man --infodir=/opt/cross/avr/share/info --with-gnu-ld --with-gnu-as --target=avr --enable-languages=c,c++ --program-prefix=avr- --program-suffix=-47-20111105 --with-sys-root=/opt/cross/avr --disable-nls --disable-libssp --with-dwarf2 --with-ppl --with-cloog |
7 | Thread model: single |
8 | gcc version 4.7.0 20111105 (experimental) (GCC) |
9 | COLLECT_GCC_OPTIONS='-mmcu=attiny4313' '-Os' '-v' '-o' 'vitrinencontroller.o' |
10 | /opt/cross/avr/lib64/gcc/avr/4.7.0/cc1 -quiet -v -imultilib avr25 vitrinencontroller.c -quiet -dumpbase vitrinencontroller.c -mmcu=attiny4313 -auxbase vitrinencontroller -Os -version -o /tmp/ccADkm1G.s |
11 | GNU C (GCC) version 4.7.0 20111105 (experimental) (avr) |
12 | compiled by GNU C version 4.5.1 20101208 [gcc-4_5-branch revision 167585], GMP version 4.3.1, MPFR version 2.4.1, MPC version 0.8.2 |
13 | GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 |
14 | ignoring nonexistent directory "/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/sys-include" |
15 | #include "..." search starts here: |
16 | #include <...> search starts here: |
17 | /opt/cross/avr/lib64/gcc/avr/4.7.0/include |
18 | /opt/cross/avr/lib64/gcc/avr/4.7.0/include-fixed |
19 | /opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/include |
20 | End of search list. |
21 | GNU C (GCC) version 4.7.0 20111105 (experimental) (avr) |
22 | compiled by GNU C version 4.5.1 20101208 [gcc-4_5-branch revision 167585], GMP version 4.3.1, MPFR version 2.4.1, MPC version 0.8.2 |
23 | GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 |
24 | Compiler executable checksum: 3d94c45c86a5a77538f6645eb0084b77 |
25 | COLLECT_GCC_OPTIONS='-mmcu=attiny4313' '-Os' '-v' '-o' 'vitrinencontroller.o' |
26 | /opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/bin/as -v -mmcu=attiny4313 -o /tmp/cc3RpSha.o /tmp/ccADkm1G.s |
27 | GNU assembler version 2.22 (avr) using BFD version (GNU Binutils) 2.22 |
28 | COMPILER_PATH=/opt/cross/avr/lib64/gcc/avr/4.7.0/:/opt/cross/avr/lib64/gcc/avr/4.7.0/:/opt/cross/avr/lib64/gcc/avr/:/opt/cross/avr/lib64/gcc/avr/4.7.0/:/opt/cross/avr/lib64/gcc/avr/:/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/bin/ |
29 | LIBRARY_PATH=/opt/cross/avr/lib64/gcc/avr/4.7.0/avr25/:/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/lib/avr25/:/opt/cross/avr/lib64/gcc/avr/4.7.0/:/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/lib/ |
30 | COLLECT_GCC_OPTIONS='-mmcu=attiny4313' '-Os' '-v' '-o' 'vitrinencontroller.o' |
31 | /opt/cross/avr/lib64/gcc/avr/4.7.0/collect2 -m avr25 -o vitrinencontroller.o crttn4313.o -L/opt/cross/avr/lib64/gcc/avr/4.7.0/avr25 -L/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/lib/avr25 -L/opt/cross/avr/lib64/gcc/avr/4.7.0 -L/opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/lib /tmp/cc3RpSha.o -lgcc -lc -lgcc |
32 | Kompilierung fehlgeschlagen. |
33 | /opt/cross/avr/lib64/gcc/avr/4.7.0/../../../../avr/bin/ld: cannot find crttn4313.o: No such file or directory |
34 | collect2: error: ld returned 1 exit status |
Was hat die Datei für eine Bewandnis? LG :)
Hallo, so ich bin jetzt schon so weit, dass die Datei wohl vom Linker gebraucht wird und ich weiß auch, wo sie hingehört (und dort fehlt sie tatsächlich, obwohl angeblich Teil der avr-libc). Erst habe ich hier eine gefunden: http://chomikuj.pl/plama6/Nauka/Kursy+Elektronika/winavr/avr/lib/avr25/crttn4313,1072117332.o Da mein PC kein Polnisch spricht, oder wohl eher, da für Win hat das nicht funktioniert. Dann habe ich mir das avr-libc-RPM von Fedora installiert. Ist leider in einem anderen Pfad gelandet. Odrt habe ich die crttn4313.o herauskopiert und das Paket wieder deinstalliert. Anschliessend habe ich die avr-libc aus dem Suse-Repo wieder installiert und die Kopie der crttn4313.o aus dem Fedora-Paket im entsprechenden Verzeichnis (/opt/cross/avr/avr/lib/avr25) eingefügt. Neuer Versuch: Es hat funktioniert!! (Obs auch rennt, wird noch getestet) Ich danke vielmals für eure Hilfe und werde mich mal an die Jungs von Suse wenden: die sollen ihre avr-libc komplettieren :p LG :)
J. W. schrieb: > so ich bin jetzt schon so weit, dass die Datei wohl vom Linker gebraucht > wird und ich weiß auch, wo sie hingehört (und dort fehlt sie > tatsächlich, obwohl angeblich Teil der avr-libc). Ja, die crt*-Dateien enthalten Startup-Code und werden automatisch dazugelinkt. > Ich danke vielmals für eure Hilfe und werde mich mal an die Jungs von > Suse wenden: die sollen ihre avr-libc komplettieren :p Ich kümmere mich am Montag darum...
R. Max schrieb: > Ich kümmere mich am Montag darum... Oh, schön, dann brauch ich ja gar keine Mailadresse mehr zu suchen usw. ;) Der Controller rennt im übrigen, also alles rund um erfolgreich. LG :)
Bislang hat avr-libc noch nicht die neue multilib-Struktur von avr-gcc implementiert, siehe http://savannah.nongnu.org/bugs/index.php?35407
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.