The Question is:
We have a client who is moving to BASIC 1.4. We compile/link our software on
BASIC 1.3. Will our software still run on their machine.
We also develop some applications on their
machine, we then copy this back to our machine. Will we be able to run this
software on our machine even though we have the 1.3 RTL library.
The Answer is :
Upward-compatibility is a central goal of OpenVMS. That is, any correct,
unprivileged, user-mode program compiled with a particular compiler and
linked on a particular version of OpenVMS is expected to run on all
future versions of OpenVMS.
The reverse is not necessarily true. Downward-compatibility can
sometimes be gotten to work, but it is not supported, not a goal, and
not documented, and there is no particular certainty that any attempt
will be successful.
In the case of BASIC V1.4, the compiler kit provided a new Run-Time
Library (RTL). This RTL must be installed in order to run programs
linked against it. So, for example, even though the two systems may be
running the same version of OpenVMS, the system with the V1.3 compiler
will need to have the V1.4 RTL installed in order to run programs linked
in that environment.
There should be no problems linking programs compiled under the V1.3
compiler against the BASIC V1.4 RTL. However, they will then have a
dependency on the later RTL.
With most compiler products, it is generally recommended that you
update to the latest version of the compiler. The best way out of your
version mismatch is to simply upgrade both systems to BASIC V1.4, or
to apply an ECO or RTL kit containing the updated BASIC RTL to the
Please see topics (3761), (5192), and (6829).
Related topics include (173), (866), (1052), (1171), (1904), (2738),
(2932), (4336), and (6049).