[Info-vax] The future of Ada on VMS
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Tue May 22 08:49:53 EDT 2018
On 2018-05-21, John E. Malmberg <wb8tyw at qsl.net_work> wrote:
> On 5/21/2018 5:42 PM, Simon Clubley wrote:
>> On 2018-05-21, johnwallace4 at yahoo.co.uk <johnwallace4 at yahoo.co.uk> wrote:
>>>
>>> When you refer to "Ada on VMS", what (exactly) do you mean?
>>>
>>
>> I mean both as a development environment and as a runtime environment.
>>
>> However, there may be an argument for treating VMS as an embedded
>> environment and hosting the cross compilers and associated toolchain
>> on another OS to do the actual development.
>
> How different will be Linux x86 elf from VMS x86 elf?
>
ELF is pretty much a (rather complicated) container so once you have
ELF support, ELF itself shouldn't be a problem.
It's what is stored inside that container which is the interesting bit.
> What would it take to be able to compile/link on Linux and run on VMS/x86?
>
On your Linux box, you need access to the headers and libraries on
the target VMS system and a compiler toolchain that can be configured
as a cross compiler for a x86-64 VMS target.
You would need most the of same bits in the compiler regardless of
whether it is a native compiler or cross compiler. The major advantage
with a cross compiler is that you can use the far richer development
environment available under Linux without having to port those tools
to VMS before you can build your compiler.
This was my experience a few years ago when I was trying to build the
FSF GCC as a cross compiler for an Alpha VMS target.
I was able to use the latest C++ compilers, build tools, etc directly
on Linux to build the cross compiler without having to first port those
tools to VMS.
As a reminder, the only language I was able to successfully build
a cross compiler for was C.
The cross compiler failed to build for various reasons for all the other
languages I tried, but I was able to use the cross compiler to compile
C test programs directly on Linux to generate an Alpha VMS binary,
transfer that binary to an Alpha VMS system and then run it, all without
having to port those tools or the cross compiler itself to VMS first.
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