This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ECOS] arm-elf & ecos


Hi,

After some much effort I could get arm-elf tool-chain build on Win 2000 & use it to build ecos library without any errors.

Lastly I had to mount the whole c:/ to text mode to get it to compile the ecos source code. Using,

$ mount -f -t c: /ecos-c

Thanks to all those who patently help me to this point. Special thanks to William A. Gatliff, Andrew Lunn, Michael Svetlik, csc1950@sina.com, Yves Rutschle, Simon Berry and all ecos & GNU new group guys…

-Mike.



From: Andrew Lunn <andrew.lunn@ascom.ch>
To: Mike A <embeddedeng@hotmail.com>
CC: crossgcc@sources.redhat.com, ecos-discuss@sources.redhat.com, bgat@billgatliff.com
Subject: Re: [ECOS] arm-elf & ecos
Date: Mon, 19 Aug 2002 10:29:41 +0200

Like i said earlier, its to do with the line endings and the way you
have mounted the filesystems.

ANSI standard says that nothing should follow the \ continuation
character except the line feed. If you have M$ line endings, there is
a carriage return before the line feed. cygwin can mount its drives in
either binary or text mode. In text mode, it inserts carriage returns
before line feeds to keep M$ applications happy. In binary mode it
does not. You need to ensure your sources are on a binary mount point
and you do not corrupt your sources by using a editor which inserts
carriage returns.

Andrew

On Mon, Aug 19, 2002 at 08:19:49AM +0000, Mike A wrote:
> Hi,
>
> I have done a small experiment & found some amazing things about the
> arm-elf I built.
>
> I took line 257 of
> /ecos-c/rep/examples/test_install/include/cyg/infra/cyg_type.h & put it in
> a empty file called test.c at two spot (or paths)
>
> 1. At C:\rep\ecos\packages\hal\arm\arch\current\src\ ;this is path where
> hal_mk_defs.c (file which included cyg_type.h that gave the error the other
> day) lives.
> 2. At C:\cygwin\home\Administrator\test\ ;this just an alternative path I
> chose.
>
> When compiling this file “test.c” with the same command but at different
> paths I get different results as below:
>
> 1. test.c at C:\rep\ecos\packages\hal\arm\arch\current\src\
> C:\>arm-elf-gcc -S C:\cygwin\home\Administrator\test\test.c
>
> 2. test.c at C:\cygwin\home\Administrator\test\
> C:\>arm-elf-gcc -S C:\rep\ecos\packages\hal\arm\arch\current\src\test.c
> C:\rep\ecos\packages\hal\arm\arch\current\src\test.c:1: Invalid token in
> expression
>
> test.c at hal_mk_defs.c's path,
> "C:\rep\ecos\packages\hal\arm\arch\current\src\" fails...
>
> But the same test.c at some arbitrary path compiles well...
>
> Contents of test.c
> ------------------
>
> #if defined(__cplusplus) && defined(__GNUC__) && \
> !defined(CYGBLD_ATTRIB_INIT_PRI)
> #endif
>
> Please let me know why such a thing is happening. Why is path becoming a
> dependency?
>
> Cheers,
> -Mike.
>
>
> >From: Andrew Lunn <andrew.lunn@ascom.ch>
> >To: Mike A <embeddedeng@hotmail.com>
> >CC: crossgcc@sources.redhat.com, ecos-discuss@sources.redhat.com,
> >bgat@billgatliff.com
> >Subject: Re: [ECOS] arm-elf & ecos
> >Date: Thu, 15 Aug 2002 09:24:04 +0200
> >
> >Hi Mike
> >
> >First thing to check is that you have all the mounts the correct type,
> >ie text or binary. This is a common problem, so look in the archive
> >and read the documentation.
> >
> > Andrew
> >
> >On Thu, Aug 15, 2002 at 07:18:07AM +0000, Mike A wrote:
> >> Hi,
> >>
> >> I could successfully build the arm-elf-gcc tool-chain on my Win 2000
> >> machine under cygwin by following the instruction given by William A.
> >> Gatliff.
> >>
> >> 1. Then I installed eocs configuration tool 2.08.
> >> 2. Synced to the ecos repository using WinCVS 1.3.
> >> 3. Then when I tried building the Tests for ARM PID (using the ARM PID
> >> template) I got the following errors:
> >>
> >>
> >> make tests -j1 --directory "/ecos-c/rep/examples/arm/arm_build"
> >>
> >> make: Entering directory `/ecos-c/rep/examples/arm/arm_build'
> >> make -r -C hal/arm/arch/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/arm/arch/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/arm/arch/v1_3_1'
> >> make -r -C hal/arm/pid/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/arm/pid/v1_3_1'
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/arm/pid/v1_3_1'
> >> make -r -C io/serial/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/io/serial/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/io/serial/v1_3_1'
> >> make -r -C hal/common/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/common/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/common/v1_3_1'
> >> make -r -C io/common/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/io/common/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/io/common/v1_3_1'
> >> make -r -C infra/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/infra/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >`/ecos-c/rep/examples/arm/arm_build/infra/v1_3_1'
> >> make -r -C kernel/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/kernel/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/kernel/v1_3_1'
> >> make -r -C language/c/libc/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/language/c/libc/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/language/c/libc/v1_3_1'
> >> make -r -C language/c/libm/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/language/c/libm/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/language/c/libm/v1_3_1'
> >> make -r -C devs/wallclock/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/devs/wallclock/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >> `/ecos-c/rep/examples/arm/arm_build/devs/wallclock/v1_3_1'
> >> make -r -C error/v1_3_1 headers
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/error/v1_3_1'
> >> make[1]: Nothing to be done for `headers'.
> >> make[1]: Leaving directory
> >`/ecos-c/rep/examples/arm/arm_build/error/v1_3_1'
> >> headers finished
> >> make -r -C hal/arm/arch/v1_3_1 arm.inc
> >> make[1]: Entering directory
> >> `/ecos-c/rep/examples/arm/arm_build/hal/arm/arch/v1_3_1'
> >> arm-elf-gcc -mcpu=arm7tdmi -Wall -Wpointer-arith -Wstrict-prototypes
> >> -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections
> >> -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority
> >> -I/ecos-c/rep/examples/arm/arm_install/include
> >> -I/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1
> >> -I/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1/src
> >> -I/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1/tests -I.
> >> -Wp,-MD,arm.tmp -o hal_mk_defs.tmp -S
> >>
> >/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1/src/hal_mk_defs.c
> >> In file included from
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:49,
> >> from
> >>
> >/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1/src/hal_mk_defs.c:48:
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> parse error before `__tmp1'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> warning: type defaults to `int' in declaration of `__tmp1'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> `_name_' undeclared here (not in a function)
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> warning: data definition has no type or storage class
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:161:
> >> parse error before `__tmp2'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:161:
> >> warning: type defaults to `int' in declaration of `__tmp2'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:161:
> >> initializer element is not constant
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:161:
> >> warning: data definition has no type or storage class
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:161:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:162:
> >> warning: type defaults to `int' in declaration of `__tmp1'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:162:
> >> redefinition of `__tmp1'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:160:
> >> `__tmp1' previously defined here
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:162:
> >> initializer element is not constant
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:162:
> >> warning: data definition has no type or storage class
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:162:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:163:
> >> parse error before `}'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:171:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:172:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:173:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:223:
> >> parse error before `CYG_BYTE'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:223:
> >> warning: type defaults to `int' in declaration of `CYG_BYTE'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:223:
> >> warning: data definition has no type or storage class
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:282:
> >> parse error before `#'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:317:
> >> stray '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/infra/cyg_type.h:341:
> >> warning: This file contains more `}'s than `{'s.
> >> In file included from
> >>
> >/ecos-c/PROGRA~1/REDHAT~1/eCos/packages/hal/arm/arch/v1_3_1/src/hal_mk_defs.c:48:
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:86:
> >stray
> >> '\' in program
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:99:
> >parse
> >> error before `}'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:99:
> >> warning: type defaults to `int' in declaration of `HAL_SavedRegisters'
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:99:
> >> warning: data definition has no type or storage class
> >> /ecos-c/rep/examples/arm/arm_install/include/cyg/hal/hal_arch.h:129:
> >parse
> >> error before `do'
> >>
> >>
> >> It goes on like this for long. Please help me straighten this issue.
> >Thanks
> >> a lot for your help!
> >>
> >> -Mike.
> >>
> >>
> >> _________________________________________________________________
> >> Chat with friends online, try MSN Messenger: http://messenger.msn.com
> >>
> >>
> >> --
> >> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> >> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
> >>
>
>
>
>
> _________________________________________________________________
> Join the world’s largest e-mail service with MSN Hotmail.
> http://www.hotmail.com
>



_________________________________________________________________
MSN Photos is the easiest way to share and print your photos: http://photos.msn.com/support/worldwide.aspx


------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]