Skip to contentSkip to conversation

under Cygwin:what's wrong with "arm" building error

U-Boot-Users liang a lei 2 participants 2 messages Dec 27, 2003

lore
Share & tools
lore
#0 lore raw

hi, all:

I am try to build u-boot image for board "ep7312", and process pause with error:
----------------------------------------------------------------------------
----------
$make
.......
m7tdmi -Wall -Wstrict-prototypes -c -o cmd_scsi.o cmd_scsi.c In file included from cmd_scsi.c:33:
/u-boot-1.0.0/include/asm/processor.h:52: parse error before `1' /u-boot-1.0.0/include/asm/processor.h:52: warning: no semicolon at end of struct or union
/u-boot-1.0.0/include/asm/processor.h:54: parse error before }' /u-boot-1.0.0/include/asm/processor.h:58: field insn' has incomplete type make[1]: *** [cmd_scsi.o] Error 1
make[1]: Leaving directory `/44b0ii/u-boot-1.0.0/common'
make: *** [subdirs] Error 1

$
----------------------------------------------------------------------------
----------------
(My build enviroment is cygwin)

By way, I post line 52 of processor.h
...
union debug_insn {
u32 arm; <---- line 52
u16 thumb;
};
....

And, if I modify "arm" to "arm1" (anything but "arm"), like

union debug_insn {
u32 arm1;
u16 thumb;
};

then build will finish without any error, it says that "u-boot" and "u-boot.srec" will be built out.

thanks for answer

Liang Alei

#1 lore raw
Quoted 17 lines · In message <000701c3cc96$aa95a380$f48ec9ca@liangalei> you wrote:

I am try to build u-boot image for board "ep7312", and process pause with error:
----------------------------------------------------------------------------
----------
$make
.......
m7tdmi -Wall -Wstrict-prototypes -c -o cmd_scsi.o cmd_scsi.c In file included from cmd_scsi.c:33:
/u-boot-1.0.0/include/asm/processor.h:52: parse error before `1' /u-boot-1.0.0/include/asm/processor.h:52: warning: no semicolon at end of struct or union
/u-boot-1.0.0/include/asm/processor.h:54: parse error before }' /u-boot-1.0.0/include/asm/processor.h:58: field insn' has incomplete type make[1]: *** [cmd_scsi.o] Error 1
make[1]: Leaving directory `/44b0ii/u-boot-1.0.0/common'
make: *** [subdirs] Error 1

Most probably you converted the source files from Unix format to DOS (with CR-LF line endings, which results in compiler errors).

Quoted 10 lines

By way, I post line 52 of processor.h
...
union debug_insn {
u32 arm; <---- line 52
u16 thumb;
};
....

And, if I modify "arm" to "arm1" (anything but "arm"), like

Quoted 7 lines

union debug_insn {
u32 arm1;
u16 thumb;
};

then build will finish without any error, it says that "u-boot" and "u-boot.srec" will be built out.

"arm" is not a reserved identifier. I can compile the source tree perfectly fine here.

Why don't you do yourself a favour and use a Linux host for building? You will have lots of avoidable problems under Cygwin.

Best regards,

Wolfgang Denk

Signature · 4 lines
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd at denx.de
When choosing between two evils, I always like to take the  one  I've
never tried before.                     -- Mae West, "Klondike Annie"