This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Macro problem building ecos with powerpc cross-compiler
- From: Leo Khale <leo at raceoddity dot net>
- To: ecos-discuss at ecos dot sourceware dot org
- Date: Tue, 28 Jun 2005 11:22:51 +0100
- Subject: [ECOS] Macro problem building ecos with powerpc cross-compiler
Hi there,
I'm attempting to build an ecos project using a powerpc-eabi
cross-compiler on Linux. I have successfully built the toolchain but
have hit a problem compiling the actual code concerning multiply defined
assembler macros. The error appears while compiling an assembler file
context.S, and the macros themselves in cyg/hal/arch.inc, for example:
.macro lwi reg,val
.macro hal_fpu_load regs
I'm aware that as I compile three separate copies of this arch.inc exist
on my machine:
- the original one in the ecos_repository/packages tree
- the one copied to my app source tree (with other kernel headers) by
the ecosconfig tool for compiling my application
- the one present in the headers gnutools/powerpc-eabi/sys-include tree
for building the cross-compiler
Since the include file is assembler and not guarded, my guess is that
it's somehow being included twice. Can anyone suggest what might be
wrong with my setup to cause this, or what the cause might be if not this?
I append an error trace below
Thanks
Leo
powerpc-eabi-gcc -c
-I/home/leok/dev/projects/architectural/ecos_kernel/full/install/include
-I/home/leok/ecos_repository/packages/hal/powerpc/arch/v2_0_26
-I/home/leok/ecos_repository/packages/hal/powerpc/arch/v2_0_26/src
-I/home/leok/ecos_repository/packages/hal/powerpc/arch/v2_0_26/tests -I.
-I/home/leok/ecos_repository/packages/hal/powerpc/arch/v2_0_26/src/
-finline-limit=7000 -msoft-float -mcpu=860 -Wall -Wpointer-arith
-Wstrict-prototypes -Winline -Wundef -g -ffunction-sections
-fdata-sections -fno-exceptions -Wp,-MD,src/context.tmp -o
src/hal_powerpc_arch_context.o
/home/leok/ecos_repository/packages/hal/powerpc/arch/v2_0_26/src/context.S
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:
Assembler messages:
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:140:
Error: Macro with this name was already defined
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:171:
Error: Macro with this name was already defined
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:181:
Error: Macro with this name was already defined
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:197:
Error: Macro with this name was already defined
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:207:
Error: Macro with this name was already defined
/home/leok/dev/projects/architectural/ecos_kernel/full/install/include/cyg/hal/arch.inc:218:
Error: Macro with this name was already defined
make[1]: *** [src/context.o.d] Error 1
make[1]: Leaving directory
`/home/leok/dev/projects/architectural/ecos_kernel/full/hal/powerpc/arch/v2_0_26'
--
Leo Nitin Khale
leo@raceoddity.net
"I expect history will be kind to me, since I intend to write it."
- Winston Churchill
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss