User Manual

Preparing Programs
HP NonStop AutoTMF Software User’s Guide429952-014
3-12
Diagnosing Preparation Errors
Diagnosing Preparation Errors
The INFO PROGRAM command displays the preparation status of each object file:
Unprepared Calls – Program calls to procedures that are normally intercepted by
NonStop AutoTMF software are not retargeted. Either the program was not
prepared, or was prepared using an earlier release of NonStop AutoTMF software.
In either case, issue the PREPARE again.
No User Library – The program has no user library. Either the program was not
prepared or the user library was removed. In either case, issue the PREPARE
again.
Invalid User Library – The user library does not contain the NonStop AutoTMF
runtime library procedures. Follow the procedures below for Preparing Programs
that Have a User Library.
Intercept Conflict – The program has a procedure that has the same name as an
NonStop AutoTMF intercept procedure. NonStop AutoTMF procedure interception
would not be reliable if the program were prepared.
External Conflict – The program makes external calls to both prepared names and
unprepared versions of the same procedure name; this situation would lead to
duplicate externals (see next item) if the program were prepared.
External conflicts occur when prepared and unprepared objects have been bound
together; try to avoid this situation; however, if you need to bind prepared and
unprepared objects, use the ALLOWDUPLICATES option (causing duplicate
externals), then rebind the object file.
Duplicate Externals – The program has duplicate names in the external procedure
list, resulting in unresolved externals when the program is run, probably leading to
program failure. Re-bind the object file.
To avoid duplicate externals, build programs using only unprepared object files,
then prepare them.
Library Conflict – The program is not prepared but is configured to use a library
that contains the AutoTMF runtime library, causing an inconsistency between the
prepared state of the program and the prepared state of the program’s user library.
Issue the PREPARE command to prepare the program.
Note that access errors may prevent preparation of an object file; both read and write
access are required.
Non-executable object files are not prepared unless they are to be bound with the
NonStop AutoTMF runtime and used as a user library. Consult Preparing Programs
that Have a User Library below. In most cases, you do not need to prepare separately
compiled modules; you only need to prepare complete programs.