By default, the debugger expects a source file to be in the same
directory it was in at compile time. If a source file has been
moved to a different directory since compile time, use the SET
SOURCE command to specify a directory search list and search
method to locate the file.
Specifying the Directory Search List
A complete ODS-2 OpenVMS file specification has the following
format:
node::device:[directory]file-name.file-type;version-number
This format reflects the DECnet node name functionality used in
DECnet Phase IV that shipped with the OpenVMS operating system.
For more information, see the DECnet for OpenVMS Networking
Manual.
On OpenVMS systems running Version 6.1 or later and DECnet-
Plus for OpenVMS, a complete file specification can include
expanded node designations, called full names. Full names are
hierarchically structured DECnet-Plus for OpenVMS node names that
can be stored in a DECdns naming service. Full names can be a
maximum of 255 bytes long, in the following format:
namespace:.directory ... .directory.node-name
In this syntax statement, namespace identifies the global naming
service, directory ... .directory defines the hierarchical
directory path within the naming service, and node-name is the
specific object defining the DECnet node.
For information on full names and suggestions for setting up a
system of names, see the VSI OpenVMS System Manager's Manual. For
information on DECnet-Plus for OpenVMS, see the DECnet-Plus for
OpenVMS Introduction and User's Guide.
If the full file specification of a source file exceeds 255
characters, the debugger cannot locate the file. You can work
around this problem by first defining a logical name "X" (at DCL
level) to expand to your long file specification, and then using
the SET SOURCE X command.
A SET SOURCE command with neither the /DISPLAY nor the /EDIT
qualifier changes both the display and edit search directories.
When compiling a program with the /DEBUG qualifier, if you use
a rooted-directory logical name to specify the location of the
source file, make sure that it is a concealed rooted-directory
logical name. If it is not concealed and you move the source file
to another directory after compilation, you cannot then use the
debugger SET SOURCE command to specify the new location of the
source file.
To create a concealed rooted-directory logical name, use the DCL
command DEFINE with the /TRANSLATION_ATTR=CONCEALED qualifier.