-
1. Data: 2010-09-09 05:19:26
Temat: Błąd podczas kompilacji pliku w C
Od: slawek7 <s...@w...pl>
Podczas kompilacji programu w WinAVR dostaje taki komunikat z
kompilatora
c:/winavr/bin/../lib/gcc/avr/4.3.0/../../../../avr/b
in/ld.exe: region
text is full (main.elf section .text)
Zupełnie nie wiem o co chodzi?
-
2. Data: 2010-09-09 07:08:56
Temat: Re: Błąd podczas kompilacji pliku w C
Od: shg <s...@g...com>
On 9 Wrz, 07:19, slawek7 <s...@w...pl> wrote:
> text is full (main.elf section .text)
> Zupełnie nie wiem o co chodzi?
Tu masz napisane o co chodzi, sekcja "text" to kod programu, brakło
miejsca we flashu.
-
3. Data: 2010-09-09 07:10:10
Temat: Re: Błąd podczas kompilacji pliku w C
Od: LemonPL <l...@g...pl>
W dniu 2010-09-09 07:19, slawek7 pisze:
> Podczas kompilacji programu w WinAVR dostaje taki komunikat z
> kompilatora
> c:/winavr/bin/../lib/gcc/avr/4.3.0/../../../../avr/b
in/ld.exe: region
> text is full (main.elf section .text)
>
> Zupełnie nie wiem o co chodzi?
Tak
Lemon
-
4. Data: 2010-09-09 15:50:26
Temat: Re: Błąd podczas kompilacji pliku w C
Od: Sebastian Biały <h...@p...onet.pl>
On 2010-09-09 07:19, slawek7 wrote:
> c:/winavr/bin/../lib/gcc/avr/4.3.0/../../../../avr/b
in/ld.exe: region
> text is full (main.elf section .text)
Zabraklo miejsca w pamięci. Spróbuj dodać opcje kompilatora -Os jesli
juz jej nie masz.
-
5. Data: 2010-09-09 17:44:37
Temat: Re: Błąd podczas kompilacji pliku w C
Od: slawek7 <s...@w...pl>
Było kompilowane z -Os.
Dziwne, ponieważ powinno być wszystko dobrze, poniewaz zostało to
ściagniete z EdW a tam podobno sie kompiluje bez kłopotów
-
6. Data: 2010-09-09 18:23:34
Temat: Re: Błąd podczas kompilacji pliku w C
Od: Sebastian Biały <h...@p...onet.pl>
On 2010-09-09 19:44, slawek7 wrote:
> Było kompilowane z -Os.
> Dziwne, ponieważ powinno być wszystko dobrze, poniewaz zostało to
> ściagniete z EdW a tam podobno sie kompiluje bez kłopotów
Pokaż polecenia kompilacji i dumpowania hex-a, może poza .text do flash
ląduja jakies inne sekcje.
Dodatkowo zainteresuj się:
avr-objdump -S -h <main.elf >main.lst
Bedzie widac co tyle zajmuje.
No i jesli flash był wypełniony na maxa to zmaiana kompilatora mogła
spowodowac kłopoty z pomieszczeniem się bo generuje się inny kod.
-
7. Data: 2010-09-09 23:31:06
Temat: Re: Błąd podczas kompilacji pliku w C
Od: Adam Dybkowski <a...@4...pl>
W dniu 2010-09-09 19:44 slawek7 napisał(a):
> Było kompilowane z -Os.
> Dziwne, ponieważ powinno być wszystko dobrze, poniewaz zostało to
> ściagniete z EdW a tam podobno sie kompiluje bez kłopotów
Zmień na chwilę procesor na większy (dla kompilatora). Zobaczysz ile
przekroczył program w stosunku do możliwości MCU, pod który obecnie
kompilujesz. Zajrzyj też do pliku .map, który wypluwa linker. Może
wystarczy coś małego wyciąć, skorzystać z prostszej wersji funkcji
printf itp.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
-
8. Data: 2010-09-10 04:21:51
Temat: Re: Błąd podczas kompilacji pliku w C
Od: slawek7 <s...@w...pl>
Do kompilacji używam AVRStudio w połączeniu z WinAVR.
Zminiłem procesor na Atmega32 i za to pojawia się inny błąd:
c:/winavr/bin/../lib/gcc/avr/4.3.0/../../../../avr/l
ib/
avr5\libc.a(fp_powsodd.o): In function `__fp_powsodd':
(.text.fplib+0x10): relocation truncated to fit: R_AVR_13_PCREL
against symbol `__mulsf3' defined in .text section in c:/winavr/bin/../
lib/gcc/avr/4.3.0/avr5\libgcc.a(_mul_sf.o)
c:/winavr/bin/../lib/gcc/avr/4.3.0/../../../../avr/l
ib/
avr5\libc.a(fp_powsodd.o): In function `__fp_powsodd':
(.text.fplib+0x20): relocation truncated to fit: R_AVR_13_PCREL
against symbol `__mulsf3' defined in .text section in c:/winavr/bin/../
lib/gcc/avr/4.3.0/avr5\libgcc.a(_mul_sf.o)
Build failed with 1 errors and 1 warnings...
-
9. Data: 2010-09-10 07:06:19
Temat: Re: Błąd podczas kompilacji pliku w C
Od: shg <s...@g...com>
On 9 Wrz, 19:44, slawek7 <s...@w...pl> wrote:
> Było kompilowane z -Os.
> Dziwne, ponieważ powinno być wszystko dobrze, poniewaz zostało to
> ściagniete z EdW a tam podobno sie kompiluje bez kłopotów
Jeżeli było kompilowane starszą wersja gcc, to mogło być mniejsze. gcc
ma niestety taką przykrą cechę, że wraz ze wzrostem numeru wersji
generowany kod jest coraz gorszy i coraz większy, trafia tam kupa
bezsensownych operacji, typu "pogrubianie zmiennych", czyli
zapisywanie kilka razy tego samego i to do rejestrów które potem nie
są używane, ale jakby tego było mało, to jeszcze jest kawałek kodu,
który sprawdza, czy aby na pewno zapisało się to co miało.
-
10. Data: 2010-09-10 10:34:50
Temat: Re: Błąd podczas kompilacji pliku w C
Od: slawek7 <s...@w...pl>
A może mi ktoś pomóc rozszyfrowac to co tam wyskoczyło w błędzie?