![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I have written a PL/I application on an AXP VMS machine. When running it on another AXP, it returns ident-mismatch for the file DPLI$RTLSHR.EXE. I moved the DPLI$RTLSHR.EXE from the original AXP to the 2nd AXP and now get the error stating the GSMATCH of the new DPLI$RTLSHR.EXE and the one in IMAGELIB.OLB don't match. Do I just need to replace DPLI$RTLSHR.EXE in IMAGELIB.OLB? Can I use the LIBRARY command to replace DPLI$RTLSHR.EXE in IMAGELIB.OLB while the system is in production? Will the system have to be rebooted? Thanks. The Answer is : Moving of system images such as DPLI$RTLSHR.EXE is not supported, and is not recommended, and can potentially lead to various errors. OpenVMS is upward-compatible, make certain you have the same or a later version of OpenVMS on the system you are copying files to, or the same or later RTL ECO (when applicable). Always develop your software on the oldest OpenVMS version you plan to support. When you must build on a newer system, you are left to use object libraries, or to copy the older RTLs to an application-private directory on the newer system and explicitly link the application against the older RTLs. (Downward compatibility is not supported.) To resolve your current problem, revert to the correct version of DPLI$RTLSHR.EXE in SYS$COMMON:[SYSLIB], and make sure there is no rogue copy in SYS$SPECIFIC:[SYSLIB]. (The specific error message being reported can be cured by issuing: LIBRAR/REPLACE SYS$SHARE:IMAGELIB.OLB DPLI$RTLSHR.EXE but the Wizard is not willing to hazard a guess on what else might go wrong with this configuration, and the Wizard strongly discourages using a newer OpenVMS RTL on an older system unless explicitly instructed to do so by the maintainer(s) of the RTL(s).) Please see topics (3761), (5192), and (6829). Related topics include (173), (866), (1052), (1171), (1904), (2738), (2932), (4336), and (6049).
|