Author |
link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
m2-guy
Member
Posts: 38
Location: Provence
Joined: 19.12.07 |
Posted on March 12 2014 01:30 |
|
|
hello
can't find a LINK option to produce an EXE which runs on any Alpha openVMS-version (v7.1 and later.) I'm running v8.3
thanks! |
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
malmberg
Moderator
Posts: 530
Joined: 15.04.08 |
Posted on March 12 2014 02:54 |
|
|
It is not exactly a link option. The linker does not really care.
You have to do some things to build an image suitable for an older version of VMS.
1. You have to set logical names up for your compilers to find the definitions that are valid for that version of VMS. Some languages like C can require you to override predefined macros or other version indicators.
2. You have to define the logical names for any of the shared images that your program needs to refer to the actual shared images of your older version of VMS.
You may need to define logical names so that you run older versions of of the compilers and to actually run the older linker tool.
Many products just do the compile step with options set for the older version and then do the final link at install time.
|
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
Bruce Claremont
Member
Posts: 623
Joined: 07.01.10 |
Posted on March 12 2014 03:05 |
|
|
Much easier to build a virtual v7.1 installation and do the compiles and links there. |
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
m2-guy
Member
Posts: 38
Location: Provence
Joined: 19.12.07 |
Posted on March 12 2014 03:07 |
|
|
thank you!
what puzzles me: when I link my program under 7.1 it also runs under 8.3. (without recompilation)
so why is the inverse step so complicated?
I no longer easily can boot 7.1 myself.
this is why I asked.
I remember that my EXE linked under 8.3 produces an error when invoked under 7.1.
don't remember the exact wording - it's kind of operating system mismatch error.
|
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
abrsvc
Member
Posts: 108
Joined: 12.03.10 |
Posted on March 12 2014 08:33 |
|
|
OpenVMS has always provided upwards compatability, meaning that older programs should run without change on newer versions. Since any referenced shareable images will be able to resolve any references correctly, this is guaranteed to work. Newer shareable images may have references to modules that don't exist on older versions (for example). In this case, attempting to run on older systems will fail.
The suggestion has always been to link on the "oldest" version to guarantee proper functioning on all versions. Please note that this will prohibit the use of newer techniques +/or routines.
With some manipulation, you CAN link on a V8.3 system and create .exes that will work onV7.1 as long as you point to the V7.1 shareable images. While not completely "supported", this does work. Again the emphasis here is to link against the shareables from the oldest system.
Dan |
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
m2-guy
Member
Posts: 38
Location: Provence
Joined: 19.12.07 |
Posted on March 12 2014 09:03 |
|
|
Thanks Dan!
I have a physical image copy of a bootable vms 7.1 disk as a file (vms71.dsk) on my pc.
(made it unter linux with dd with vms disk connected to a pc with scsi.
it boots under es40.org alpha emulator but I have network problems so cant really use the emu apart from the fact that I wouldn't trust this emu to produce anything for production use.)
If I ftp the vms71.dsk to the alpha running vms8.3, is there a way to mount it as virtual disk in order to access the vms7.1 system's shareable image file?
*
p.s.: in http://www.digiater.nl/lddriver.html just find
"Beginning in V8.2 LD is fully integrated."
is it still in V8.3?
Edited by m2-guy on March 12 2014 09:09 |
|
Author |
RE: link option to produce an EXE on alpha openVMS v8.3 to run on v7.1 and up? |
Bruce Claremont
Member
Posts: 623
Joined: 07.01.10 |
Posted on March 13 2014 04:01 |
|
|
Boot the 7.1 disk under FreeAXP. You will then have a fully functional VMS 7.1 system with networking upon which to build your 7.1 images.
To add to abrsvc's explanation, we maintain older versions of VMS specifically so we can produce product executables that are compatible with VMS back to VMS 5.5. We uses to do this with actual VAX and Alpha hardware. Now we can do it using SimH VAX, FreeAXP, and Avanti virtual systems. |
|