Problems with Building a Fortran Cross Compiler
Jim Wilson
wilson@specifixinc.com
Fri Feb 27 08:00:00 GMT 2004
aaronchiles@cox.net wrote:
>if I load the FORTRAN obj file on the board I receive Relocation value does not fit in 24 bits.
My guess would be that you forgot to link in something. The fortran
compiler has a run time that needs to be linked in, particularly if you
do something like I/O.
The C library is built into the vxworks kernel, so you don't need to
worry about linking C files with any library. But vxworks is not going
to have the Fortran library built into the kernel.
Because vxworks by partially linking (-r) objects, and then loading them
into the kernel, you won't get an error for a missing library until you
load an object file.
You can probably find the missing symbols by using objdump to look at
the relocations. The library you need is probably libg2c.a.
> I've tried going back to the beginning and updated the binutilities to 2.14
> gcc/include/sys/resource.h:44: parse error before "PARAMS"
This one I can't make sense of. Where did gcc/include/sys/resource.h
come from? There is no such file in binutils or gcc. I am guessing it
is a fixincluded target header file, but does vxworks have such a file?
Maybe this is a fixinclude host header file, but I doubt such a file
would have PARAM markers in it.
You have done something here that I can't understand from the info you
gave me. I think you have somehow messed up your header files, or maybe
the host environment. You need to give more details about the commands
you ran, and the errors you are getting.
> libf2c/libU77/etime_.c:129: storage size of 'rbuff' isn't known
> libf2c/libU77/etime_.c:131: 'RUSAGE_SELF' undeclared (first use)
> libf2c/libU77/etime_.c:131: (Each undeclared identifier is reported only once)
This similarly implies that something in your environment is messed up,
or that you configured something wrong.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com
More information about the Gcc
mailing list