[Info-vax] GCC for VMS, was: Re: fortran compiler roadmap?

Simon Clubley clubley at remove_me.eisner.decus.org-Earth.UFP
Thu Apr 18 08:04:16 EDT 2013


On 2013-04-18, John Wallace <johnwallace4 at gmail.com> wrote:
> On Apr 18, 4:03 am, "Craig A. Berry" <craigbe... at mac.com.invalid>
> wrote:
>>
>> I was recently told by someone from Ada Core that GCC for VMS can be
>> built more or less straightforwardly by doing something called a
>> "Canadian cross compile."  This is how they build their Ada compiler,
>> and he was pretty sure they'd contributed back upstream anything needed
>> to build GCC targeting VMS.
>>

Typical. :-)

A compiler for VMS which cannot actually be built on VMS. :-)

[snip]

>
> I'm not sure a Canadian cross would be considered "straightforward" by
> most folk.
>

I'm wondering if it's a full blown Canadian cross (which does not make
much sense in this context), or if it's more that --build= is, say, Linux
and --host= and --target= are both VMS.

>
> A 'Canadian cross' compiler isn't a commonly used concept, but
> basically you have a 'build the compiler' environment, and a host
> environment, and a target environment. All are different. E.g. you
> build the compiler on Linux (eg x86 Linux), so that it can be used to
> compile (link, etc) on a VMS host, and the generated code can run on
> 68k.
>
> There's more to this than may at first be obvious; I knew someone
> whose job it was to do this, though not with the particular examples
> mentioned above.
>

I've never done a Canadian before so I don't know for sure what bits,
apart from the obvious ones, are different.

However, I've done plenty of normal cross compiler builds over the years
so I do have a initial feeling of what they _might_ be, but as always
with these things, it's not until you try the actual build do you come
across the issues you never even thought about. :-)

> And then, as noted by Craig, there are the other parts of the
> toolchain besides the compiler. Some of the simple ones are part of
> the compiler build (binutils?). The gdb debugger isn't part of that
> package (or at least wasn't, when I checked a year or two ago, gcc
> 4.something/gdb 7.something). In principle OpenVMS on IA64 has been a
> supported gdb target since August 2012 (gdb 7.5) but I don't know how
> well that fits in this picture.
>

binutils is the correct name and it is indeed a seperate package; binutils
can be used seperately from gcc for other projects.

Simon.

-- 
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world



More information about the Info-vax mailing list