-
1. Data: 2009-08-08 08:13:55
Temat: Problem z kompilacją programu dla ARM
Od: Paweł <p...@n...pl>
Witam !
Piszę program dla AT1SAM7S256 w C w środowisku CrossStudio
Programie potrzebuję użyć jedną dużą tablicę i kilka mniejszych
umieszczonych w pamięci flash. Łącznie to będzie około 70KB czyli
znacznie mniej od zasobów uP
Program kompiluję dla "ARM Flash Debug".
Tą największą tablicę zadeklarowałem tak:
const short CS_DATA[32752]={....
Jednak gdy jest ona tak duża to pojawia się błąd linkera (dla mniejszych
tablic jest OK):
section .data overlaps absolute placed section .setup
c:/program files/rowley associates limited/crossworks for arm
1.7/gcc/bin/ld: section .setup [0010ff80 -> 0010ffff] overlaps section
.rodata [00100680 -> 0011072b]
Czy ktoś może mi poradzić jak rozwiązać powyższy problem ?
Paweł
-
2. Data: 2009-08-08 08:46:22
Temat: Re: Problem z kompilacją programu dla ARM
Od: Paweł <p...@n...pl>
>
> section .data overlaps absolute placed section .setup
> c:/program files/rowley associates limited/crossworks for arm
> 1.7/gcc/bin/ld: section .setup [0010ff80 -> 0010ffff] overlaps section
> .rodata [00100680 -> 0011072b]
>
Sekcja .setup ma na sztywno ustawiony adres 0x10ff80. Więc nic dziwnego,
że sekcja .rodata się nie mieściła. Gdy zmienię adres .setup np. na
0x13ff80 wszytko kompiluje się prawidłowo. Moje doświadczenie z
procesorami ARM jest niewielkie i nie bardzo wiem do czego służy ta
sekcja .setup.
Jakie skutki przyniesie zmiana jej adresu ?
Z jakiego powodu dla AT91SAM7S256 adres domyślnie ustawiony jest na
wartość 0x10FF80 ?
Paweł
-
3. Data: 2013-12-04 16:57:05
Temat: Re: Problem z kompilacją programu dla ARM
Od: a...@g...com
Hello
it looks like 8 have the same problem,
did you find the solution?
On Saturday, 8 August 2009 10:46:22 UTC+2, Paweł wrote:
> >
> > section .data overlaps absolute placed section .setup
> > c:/program files/rowley associates limited/crossworks for arm
> > 1.7/gcc/bin/ld: section .setup [0010ff80 -> 0010ffff] overlaps section
> > .rodata [00100680 -> 0011072b]
> >
>
> Sekcja .setup ma na sztywno ustawiony adres 0x10ff80. Wi�c nic dziwnego,
> �e sekcja .rodata si� nie mie�ci�a. Gdy zmieni� adres .setup np. na
> 0x13ff80 wszytko kompiluje si� prawid�owo. Moje do�wiadczenie z
> procesorami ARM jest niewielkie i nie bardzo wiem do czego s�u�y ta
> sekcja .setup.
> Jakie skutki przyniesie zmiana jej adresu ?
> Z jakiego powodu dla AT91SAM7S256 adres domy�lnie ustawiony jest na
> warto�� 0x10FF80 ?
>
> Paweďż˝
-
4. Data: 2013-12-04 18:19:13
Temat: Re: Problem z kompilacją programu dla ARM
Od: Adam Górski <gorskiamalpa@wpkropkapl>
W dniu 2013-12-04 16:57, a...@g...com pisze:
> Hello
> it looks like 8 have the same problem,
> did you find the solution?
>
>
> On Saturday, 8 August 2009 10:46:22 UTC+2, Paweł wrote:
>>>
>>> section .data overlaps absolute placed section .setup
>>> c:/program files/rowley associates limited/crossworks for arm
>>> 1.7/gcc/bin/ld: section .setup [0010ff80 -> 0010ffff] overlaps section
>>> .rodata [00100680 -> 0011072b]
>>>
>>
>> Sekcja .setup ma na sztywno ustawiony adres 0x10ff80. Wi�c nic dziwnego,
>> �e sekcja .rodata si� nie mie�ci�a. Gdy zmieni� adres .setup np. na
>> 0x13ff80 wszytko kompiluje si� prawid�owo. Moje do�wiadczenie z
>> procesorami ARM jest niewielkie i nie bardzo wiem do czego s�u�y ta
>> sekcja .setup.
>> Jakie skutki przyniesie zmiana jej adresu ?
>> Z jakiego powodu dla AT91SAM7S256 adres domy�lnie ustawiony jest na
>> warto�� 0x10FF80 ?
>>
>> Paweďż˝
>
A używasz float lub double ?
Adam