This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Error compilling synth target
- From: John Dallaway <john at dallaway dot org dot uk>
- To: Claus LensbÃl <cmol at cmol dot dk>
- Cc: eCos Discussion <ecos-discuss at sourceware dot org>
- Date: Sun, 26 Apr 2015 14:48:18 +0100
- Subject: Re: Error compilling synth target
- Authentication-results: sourceware.org; auth=none
- References: <CAAMe9vtGJmvKu6aAWcPRye4kYvJ=ga1OeEsHJ9gJwfG72hw13A at mail dot gmail dot com>
Hi Claus
On 22/04/15 18:50, Claus LensbÃl wrote:
> I'm trying to compile a synth target with eCos.
> I downloaded using the tcl-script, and are running the configtool to
> select the target.
> I have set CYGBLD_GLOBAL_COMMAND_PREFIX to empty, to use the system
> stack, however I cannot get it to compile due to "loss of precision"
> errors. If I add -fpermissive to the compile I get further but end up
> with a lot of:
>
>
> ==================================================================
> /opt/ecos/ecos-3.0/packages/hal/synth/i386linux/v3_0/src/syscall-i386-linux-1.0.S:387:
> Error: operand type mismatch for `push'
[ snip ]
> I'm running on a ubuntu 14.10 system wit gcc:
>
> gcc -v
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
> Target: x86_64-linux-gnu
[ snip]
The eCos synthetic (linux) target does not support 64-bit compilation at
present. Try adding the "-m32" switch to the following eCos
configuration options:
CYGBLD_GLOBAL_CFLAGS
CYGBLD_GLOBAL_LDFLAGS
in order to force 32-bit compilation and linking on your 64-bit Linux host.
I hope this helps...
John Dallaway
eCos maintainer
http://www.dallaway.org.uk/john
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss