[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

i386 bsp issues




lange92 at 2067.resnet.uni.edu wrote:
> 
> Hi all,
>   I attempted to compile the i386-rtems bsp manually, using the configure
> script, using the command:
> 
> ../rtems-4.5.0/configure --target=i386-rtems --enable-posix
> --enable-rtemsbsp="pc386"
> --prefix=/users/lange92/illinoiscentral/build-i386-coff-rtems
> 
>   I modified the pc386/lib/bsp_specs, removing the entries for crti.o and
> crtn.o (it looks suspiciously like the bsp_specs from rtems-4.0.0). It
> compiles further now, but then it bombs out with the following errors:
> 
> ../../../../../../pc386/lib/librtemsall.a(bootcard.o): In function `boot_card':
> bootcard.c:108: undefined reference to `bsp_start'
> bootcard.c:122: undefined reference to `_fini'
> bootcard.c:123: undefined reference to `_init'
> 
>   A monster grep shows bspstart.c has at least the first routine, but I
> could not locate a bspstart.h file to #include in the rest of the system.
> I do not see how the functions defined in bspstart.c could be used
> otherwise, unless it's built to a .o and linked against directly.
> 
>   Any ideas where to go from here?

Yes.  The startup code is being built for ELF with init/fini C++
constructor
which is not the case with gcc 2.8.1/coff.  

Look in startup/Makefile* and remove the -DUSE_INIT_FINI since you don't
want
that.  This only impacts the code compiled in that directory so if you
remove the objects in that directory and do a make from the start, you
should be OK.

> Thanks in advance,
> DanL

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985