Hello,
> Seems your compiler is incorrectly patched. When I call avr-gcc with > -v, it gives me: I used the patch at https://savannah.nongnu.org/patch/?func=detailitem&item_id=2923 for 3.4.4. As well I can call it like: [EMAIL PROTECTED] ~]$ avr-gcc -v -mmcu=atmega168 -Wl,--section-start=.text=0x4000 -o foo foo.c Reading specs from /opt/avr/lib/gcc/avr/3.4.4/specs Configured with: ../configure --prefix=/opt/avr --target=avr --enable-languages=c,c++ --disable-nls : (reconfigured) ../configure --prefix=/opt/avr --target=avr --enable-languages=c --disable-nls Thread model: single gcc version 3.4.4 /opt/avr/libexec/gcc/avr/3.4.4/cc1 -quiet -v foo.c -quiet -dumpbase foo.c -mmcu=atmega168 -auxbase foo -version -o /tmp/ccNSNRkd.s ignoring nonexistent directory "/opt/avr/lib/gcc/avr/3.4.4/../../../../avr/sys-include" #include "..." search starts here: #include <...> search starts here: /opt/avr/lib/gcc/avr/3.4.4/include /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/include End of search list. GNU C version 3.4.4 (avr) compiled by GNU C version 3.4.4 20050721 (Red Hat 3.4.4-2). GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129224 foo.c:3:26: warning: no newline at end of file /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/bin/as -mmcu=atmega168 -o /tmp/ccGpfgqi.o /tmp/ccNSNRkd.s /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/bin/ld -m avr5 -Tdata 0x800100 -o foo /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/lib/crtm168.o -L/opt/avr/lib/gcc/avr/3.4.4 -L/opt/avr/lib/gcc/avr/3.4.4/../../../../avr/lib --section-start=.text=0x4000 /tmp/ccGpfgqi.o -lgcc -lc -lgcc Where foo.c is just a basic C program that does nothing. So it doesn't seem to complain? Binutils is 2.16, unpatched. Does that need a patch as well, it looked to me like support got integrated into 2.16. When run from my makefile I see the following: Linking: tinyloader.elf avr-gcc tinyloader.o --output tinyloader.elf -Wl,--section-start=.text=0x3E00 -Wl,-Map=tinyloader.map,--cref -nostartfiles -v Reading specs from /opt/avr/lib/gcc/avr/3.4.4/specs Configured with: ../configure --prefix=/opt/avr --target=avr --enable-languages=c,c++ --disable-nls : (reconfigured) ../configure --prefix=/opt/avr --target=avr --enable-languages=c --disable-nls Thread model: single gcc version 3.4.4 /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/bin/ld -m avr2 -o tinyloader.elf -L/opt/avr/lib/gcc/avr/3.4.4 -L/opt/avr/lib/gcc/avr/3.4.4/../../../../avr/lib tinyloader.o --section-start=.text=0x3E00 -Map=tinyloader.map --cref -lgcc -lc -lgcc /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/bin/ld: address 0x3f9e of tinyloader.elf section .text is not within region text make: *** [tinyloader.elf] Error 1 The key line being: /opt/avr/lib/gcc/avr/3.4.4/../../../../avr/bin/ld -m avr2 -o tinyloader.elf Which has avr2, whereas before it was avr5. When does this get set? Regards, -Colin Regards, -Colin _______________________________________________ AVR-GCC-list mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/avr-gcc-list
