This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


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: synth linux tests: address 0x0 of cache section .fixup is not within region rom


I haven't solved your problem but I think I've isolated it.

I'm having the same problem when creating the tests (or any program) for a
Linux synthetic target.  I've loaded the current (as of mid-March) CVS ecos
and configtool. I relooked at the ecos build and I have an error (just an
error statement in the output stream with the build continuing as if
everything's ok).  The error encountered is that the build process
(makefile) couldn't find the init.tcl file and comes up with the error
message that TCL may not have been installed correctly.  This error occurs
after the heaps.cxx file is made. The build is looking for a TCL8.0
directory under the tools/share, tools/H-i686-pc-linux-gnu/usr/share or
tools/H-i686-pc-linux-gnu/share directories.  I added to the search path the
TCL installed at usr/lib/tcl8.3 but get the same error.  My next step is to
install TCL under one of the above listed directories (probably tools/share)
but am not real confident since the makefile seems to be looking for a
static tcl8.0 directory name where the init.tcl file is located. I just
haven't had the chance to try that or trace the makefile command path to
find the location where the TCL directory is defined  (I'm working on
porting a program to ecos under the linux synthetic target and i386 target,
part-time). Since the error occurs where the heap is defined I believe
that's why the gnu linker can't find the specified memory regions for the
Linux synthetic target and errors on a cache overlap.

The following is my build error listing:

make -r -C services/memalloc/common/current heapgeninc.tcl
make[1]: Entering directory
`/home/joel/project-docs/ebtide_build/services/memalloc/common/current'
gcc -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-
virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions
 -fvtable-gc -finit-priority  -I/home/joel/project-docs/ebtide_install/inclu
de -I/opt/ecos/packages/services/memalloc/common/current -I/opt/ecos/package
s/services/memalloc/common/current/src -I/opt/ecos/packages/services/memallo
c/common/current/tests -I. -Wp,-MD,heapgen.tmp -E
/opt/ecos/packages/services/memalloc/common/current/src/heapgen.cpp -o
heapgeninc.tcl
make[1]: Leaving directory
`/home/joel/project-docs/ebtide_build/services/memalloc/common/current'
make -r -C services/memalloc/common/current heaps.cxx
make[1]: Entering directory
`/home/joel/project-docs/ebtide_build/services/memalloc/common/current'
XPWD=`pwd` ; cd /opt/ecos/packages/services/memalloc/common/current/src ; sh
heapgen.tcl "/home/joel/project-docs/ebtide_install" "$XPWD"
make[1]: Leaving directory
`/home/joel/project-docs/ebtide_build/services/memalloc/common/current'
application-specific initialization failed: Can't find a usable init.tcl in
the following directories:
make -r -C hal/synth/arch/current build
    /tools/H-i686-pc-linux-gnu/share/tcl8.0
/tools/H-i686-pc-linux-gnu/usr/share/tcl8.0 /tools/share/tcl8.0
tools/share/tcl8.0
make[1]: Entering directory
`/home/joel/project-docs/ebtide_build/hal/synth/arch/current'

gcc -c  -I/home/joel/project-docs/ebtide_install/include -I/opt/ecos/package
s/hal/synth/arch/current -I/opt/ecos/packages/hal/synth/arch/current/src -I/
opt/ecos/packages/hal/synth/arch/current/tests -I. -I/opt/ecos/packages/hal/
synth/arch/current/src/ -Wall -Wpointer-arith -Wstrict-prototypes -Winline -
Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-
rtti -fno-exceptions -fvtable-gc -finit-priority -Wp,-MD,src/synth_entry.tmp
 -o src/hal_synth_arch_synth_entry.o
/opt/ecos/packages/hal/synth/arch/current/src/synth_entry.c


This probably means that Tcl wasn't installed properly.



Hope this helps.  If you solve it before me, please let me know what
corrected the problem.

Thanks
Joel Hansen

----- Original Message -----
From: "Jonathan Larmour" <jlarmour@redhat.com>
To: <programmer@mail.eblueweb.com>
Cc: <ecos-discuss@sources.redhat.com>
Sent: Wednesday, April 10, 2002 05:22 PM
Subject: Re: [ECOS] synth linux tests: address 0x0 of cache section .fixup
is not within region rom


> programmer@mail.eblueweb.com wrote:
> >
> > Hello!
> >
> > This problem drives me nuts. The person solving this will be eternally
> > remembered in the comments of the source code.
> >
> > Building on (SuSE7.3) linux.
> >
> > Using latest cvs (ecosconfig 1.3.net)
> > Doing
> > # ecosconfig new linux all
> > U CYGBLD_ISO_POSIX_CLOCKS_HEADER, new inferred value <cyg/posix/time.h>
> > U CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT, new inferred value 0
> > U CYGBLD_ISO_DIRENT_HEADER, new inferred value <cyg/fileio/dirent.h>
> > U CYGBLD_ISO_POSIX_CLOCK_TYPES_HEADER, new inferred value
> > <cyg/posix/time.h>
> > U CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE, new inferred value 16384
> > U CYGBLD_ISO_BSDTYPES_HEADER, new inferred value <sys/bsdtypes.h>
> > U CYGBLD_ISO_OPEN_MAX_HEADER, new inferred value <cyg/fileio/limits.h>
> > U CYGBLD_ISO_PTHREAD_MUTEX_HEADER, new inferred value
<cyg/posix/mutex.h>
> > U CYGBLD_ISO_NETDB_PROTO_HEADER, new inferred value <net/netdb.h>
> > U CYGBLD_ISO_NETDB_SERV_HEADER, new inferred value <net/netdb.h>
> > # ecosconfig tree
> > # make build
> > [snip]
> > # make tests
> > [snip]
> > /usr/i486-suse-linux/bin/ld: warning: no memory region specified for
> > section `.rel.data.inetsw'
> > /usr/i486-suse-linux/bin/ld: address 0x0 of
> > /home/bjorn/ecos-work/install/tests/hal/common/current/tests/cache
section
> > ..fixup is not within region rom
> > /usr/i486-suse-linux/bin/ld: address 0x0 of
> > /home/bjorn/ecos-work/install/tests/hal/common/current/tests/cache
section
> > ..gcc_except_table is not within region rom
> > collect2: ld returned 1 exit status
>
> Are you sure this is latest CVS? I ask because the current
> hal/synth/i386linux/current/include/pkgconf/mlt_synth_i386_rom.ldi does
> include:
>
>     SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
> and
>     SECTION_gcc_except_table (rom, ALIGN (0x1), LMA_EQ_VMA)
>
> which should provide mappings for those sections, although not
> .rel.data.inetse admittedly. I'll fix that internally.
>
> Jifl
> --
> Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
> Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine
>
> --
> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
>


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


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