[En-Nut-Discussion] still can't compile xsvfexec

Tom Armitage tom at expat.dyndns.org
Wed Feb 22 16:47:10 CET 2006


Harald,

Thanks for your patience so far!

I am trying to compile xsvfexec-enut30d with the XVSF file that came
with the original xsvfexec101.zip file for the ethernut 2.1b board
(enut202.xsvf).

I unzipped the xsvfexec-enut30d package to the
ethernut-4.0.2/nut/app directory and used the configurator to copy
the code to the ethernut-4.0.2/nutapp directory (Build->Create Sample
Directory).  I then replaced the original XVSF file in the cpld
directory (enut30d.xvsf) with enut202.xsvf (after renaming it) and
tried to build the package according to the instructions:

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\thomasa>cd \

C:\>cd \ethernut-4.0.2\nutapp\xsvfexec-enut30d

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d>make clean
rm -f xsvfexec.o tapsm.o host.o urom.o
rm -f xsvfexec.hex xsvfexec.bin urom.c
rm -f xsvfexec.eep
rm -f xsvfexec.obj
rm -f xsvfexec.map
rm -f xsvfexec.lst tapsm.lst host.lst urom.lst
rm -f xsvfexec.bak tapsm.bak host.bak urom.bak

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d>make
avr-gcc -c -mmcu=atmega128 -Os -fno-delete-null-pointer-checks -Wall -
Wstrict-pr
ototypes -Wa,-ahlms=xsvfexec.lst -DETHERNUT2 -D__HARVARD_ARCH__ -Ic:/
ethernut-4.
0.2/nutbld/include  -Ic:/ethernut-4.0.2/nut/include  xsvfexec.c -o
xsvfexec.o
avr-gcc -c -mmcu=atmega128 -Os -fno-delete-null-pointer-checks -Wall -
Wstrict-pr
ototypes -Wa,-ahlms=tapsm.lst -DETHERNUT2 -D__HARVARD_ARCH__ -Ic:/
ethernut-4.0.2
/nutbld/include  -Ic:/ethernut-4.0.2/nut/include  tapsm.c -o tapsm.o
avr-gcc -c -mmcu=atmega128 -Os -fno-delete-null-pointer-checks -Wall -
Wstrict-pr
ototypes -Wa,-ahlms=host.lst -DETHERNUT2 -D__HARVARD_ARCH__ -Ic:/
ethernut-4.0.2/
nutbld/include  -Ic:/ethernut-4.0.2/nut/include  host.c -o host.o
crurom -r -ourom.c cpld
avr-gcc -c -mmcu=atmega128 -Os -fno-delete-null-pointer-checks -Wall -
Wstrict-pr
ototypes -Wa,-ahlms=urom.lst -DETHERNUT2 -D__HARVARD_ARCH__ -Ic:/
ethernut-4.0.2/
nutbld/include  -Ic:/ethernut-4.0.2/nut/include  urom.c -o urom.o
urom.c:9: error: size of variable 'file1data' is too large
make: *** [urom.o] Error 1

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d>dir
  Volume in drive C has no label.
  Volume Serial Number is B0A5-5DF8

  Directory of C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d

02/21/2006  07:46 AM    <DIR>          .
02/21/2006  07:46 AM    <DIR>          ..
02/21/2006  07:46 AM    <DIR>          verilog
01/08/2006  06:07 PM             9,532 host.c
01/08/2006  07:44 PM             4,453 host.h
01/12/2006  12:16 PM             2,356 Makefile
06/26/2004  09:21 PM             8,218 tapsm.c
06/27/2004  02:06 PM             2,937 tapsm.h
11/29/2005  06:27 PM             6,960 xsvf.h
11/29/2005  07:02 PM            18,144 xsvfexec.c
02/21/2006  07:46 AM    <DIR>          cpld-original
02/21/2006  07:51 AM    <DIR>          cpld
02/21/2006  07:54 AM             4,576 xsvfexec.o
02/21/2006  07:54 AM            35,592 xsvfexec.lst
02/21/2006  07:54 AM             1,712 tapsm.o
02/21/2006  07:54 AM            12,091 tapsm.lst
02/21/2006  07:54 AM             3,412 host.o
02/21/2006  07:54 AM            26,706 host.lst
02/21/2006  07:54 AM           202,757 urom.c
               14 File(s)        339,446 bytes
                5 Dir(s)   7,657,709,568 bytes free

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d>cd cpld

There is nothing else in the cpld directory:

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d\cpld>dir
  Volume in drive C has no label.
  Volume Serial Number is B0A5-5DF8

  Directory of C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d\cpld

02/21/2006  07:51 AM    <DIR>          .
02/21/2006  07:51 AM    <DIR>          ..
10/30/2003  02:56 PM            39,496 enut30d.xsvf
                1 File(s)         39,496 bytes
                2 Dir(s)   7,657,709,568 bytes free

C:\ethernut-4.0.2\nutapp\xsvfexec-enut30d\cpld>

I see exactly the same results when I try and compile the original
freshly unzipped xsvfexec101.zip package.

I understand that the compiler thinks that the urom.c contains a data
structure that is too large.  What I don't understand is why I can't
compile the unmodified code and unchanged XSVF file straight out of the
zip file I downloaded.  Surely this should work, at least for the
xsvfexec101.zip and the Ethernut2.1b board??

Am I missing a compiler switch or something?

Thanks again,
Tom




More information about the En-Nut-Discussion mailing list