This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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]

Configuration issues on Itanium VMS


My current problem is with a cross native build, aka
build=alpha-dec-openvms7_1
host=ia64-hp-openvms8_0
target=ia64-hp-openvms8_0
but the same issue will occur regardless of build machine for this host.
Gcc version 3.4.2 (patched)

On VMS, all CRTL function symbols are prefixed, usually by "decc$". The
HP VMS C compiler handles this via an internal mechanism. However Gcc
has to have the proper header file included to add the prefix via an asm state-
ment. On Alpha/VMS there is a VAX compatibility library that resolves the
function if the header file is not included. This compatibility library is some-
thing of a kludge and doesn't exist on Itanium VMS.


Configure, e.g. libiberty/configure, generates conftest programs to decide if
particular CRTL functions exist in the host. If the compile or link is
unsucessful, e.g. undefined symbols in the link, then the function is
assumed not to exist. *Configure doesn't bother to include the necessary
header files in the programs it generates, so all CRTL functions show up as
undefined with Gcc*.


The alternatives are to teach Gcc to add the proper prefix to all CRTL
functions or to teach configure to include the proper header files when
testing for CRTL functions.

Any thoughts on which alternative would be best, or other alternatives?

--Douglas Rupp
Ada Core Technologies, Inc



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