This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Error: .size expression for __restore_rt does not evaluate to a constant
- From: Ross Younger <ecos at impropriety dot org dot uk>
- To: ecos-discuss at ecos dot sourceware dot org
- Date: Wed, 01 Jun 2011 19:24:25 +0100
- Subject: Re: [ECOS] Error: .size expression for __restore_rt does not evaluate to a constant
- References: <4DE63B58.90402@zwizwa.be>
On 01/06/11 14:15, Tom Schouten wrote:
make[1]: Entering directory
`/home/tom/ecos/src/build_synthetic/hal/synth/i386linux/v3_0_9'
...
/tmp/ccCMyb7H.s: Assembler messages:
/tmp/ccCMyb7H.s: Error: .size expression for __restore_rt does not
evaluate to a constant
/tmp/ccCMyb7H.s: Error: .size expression for __restore does not evaluate
to a constant
I had a quick play with the trunk of the public hg tree, and while
_something_ needs to be fixed for latest gcc, but I don't see your exact
error. (I note in passing that your repository path suggests you are
using eCosPro 3.0.9. You won't be able to get support for that here - I
suggest you approach eCosCentric.)
On my system (ubuntu 10.10 on amd64, gcc version 4.4.5 (Ubuntu/Linaro
4.4.4-14ubuntu5)) I can build eCos for the synthetic target out of the
box, but not the tests:
[...]
make[1]: Entering directory `/tmp/ecosyn/hal/common/current'
gcc -L/tmp/ecosyn/install/lib -Ttarget.ld -o
/tmp/ecosyn/install/tests/hal/common/current/tests/context
tests/context.o -m32 -g -nostdlib -Wl,--gc-sections -Wl,-static
target.ld:33 cannot move location counter backwards (from
000000000200ed20 to 00000000007f12e0)
I suspect that something subtle has changed in gcc's behaviour between
versions. This will need input from somebody who knows more about linker
magic than I do.
Ross
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss