HELP LIBRARY — VMS 4.6
Invokes the Librarian Utility to create, modify, or describe an
object, macro, help, text, or shareable image library.
Format:
LIBRARY library-file-spec [input-file-spec[,...]]
Additional information available:
ParametersCommand QualifiersPositional QualifierExamples
Parameters
library-file-spec Specifies the name of the library you want to create or modify. If the file specification does not include a file type, the LIBRARY command assumes a default type of OLB, indicating an object library. input-file-spec[,...] Specifies the names of one or more files that contain modules you want to insert or replace in the specified library. If you specify more than one input file, separate the file specifications with commas. The input-file-spec parameter is required when you specify /REPLACE, which is the LIBRARY command's default operation, or /INSERT, which is an optional qualifier. When you use the /CREATE qualifier to create a new library, the input-file-spec parameter is optional. If you include an input file specification with /CREATE, the LIBRARY command first creates a new library, and then inserts the contents of the input files into the library.
Command Qualifiers
Additional information available:
/BEFORE/COMPRESS/CREATE/CROSS_REFERENCE/DATA
/DELETE/EXTRACT/FULL/GLOBALS/HELP/HISTORY/INSERT
/LIST/LOG/MACRO/NAMES/OBJECT/ONLY/OUTPUT
/REMOVE/REPLACE/SELECTIVE_SEARCH/SHARE/SINCE/SQUEEZE
/TEXT/WIDTH
/BEFORE
/BEFORE[=time] Used in conjunction with the /LIST qualifier to specify that only those files dated earlier than a particular time be listed. You can specify an absolute time or a combination of absolute and delta times. If you omit the /BEFORE qualifier, all modules are listed regardless of date. If you specify /BEFORE without a date or time, all files created before today are listed by default.
/COMPRESS
/COMPRESS[=(option[,...])] Recovers space that had been occupied by modules deleted from the library. When you specify /COMPRESS, the LIBRARY command by default creates a new version of the library in your current default directory. You can use options to the /COMPRESS qualifier to make some specifications in the new version of the library different from the original library.
/CREATE
/CREATE[=(option[,...])] Creates a new library. When you specify /CREATE, you can optionally specify a file or a list of files that contains modules to be placed in the library. By default, the LIBRARY command creates an object module library; specify /SHARE, /MACRO, /HELP, or /TEXT to change the default library type.
/CROSS_REFERENCE
/CROSS_REFERENCE[=(option[,...])] Requests a cross-reference listing of an object library. If you omit this qualifier, cross-reference listings are not provided. If you specify /CROSS_REFERENCE without specifying an option, you will obtain by default cross-reference listings that contain symbols by name and symbols by value.
/DATA
/DATA=option
Used with the REDUCE or EXPAND options, produces a library that is in
data-reduced format, or expands a library currently in data-reduced
format.
REDUCE Produces a library in data-reduced format. Libraries
stored in data-reduced format require less disk
space; however, access to such libraries generally is
slower.
EXPAND Expands a library currently stored in data-reduced
format. Libraries stored in normal format require
more disk space; however access to such libraries
generally is faster.
There is no default option for the /DATA qualifier. You must
specify one and only one of the options each time you use /DATA.
Note that the /DATA qualifier and either option produces an implicit
/COMPRESS of the library. This occurs just as if you had entered
/COMPRESS. As the data format is expanded or reduced, the library
command recovers space that had been occupied by modules deleted
from the library.
/DELETE
/DELETE=(module[,...]) Deletes modules from a library. If you specify more than one module, separate them with commas and enclose the list in parentheses.
/EXTRACT
/EXTRACT=(module[,...]) Copies one or more modules from a library into a file. If you specify more than one module, separate the module names with commas and enclose the list in parentheses. Wildcard characters (see Section 3.7 of the VAX/VMS DCL Concepts Manual) are allowed in the module specification. If you specify the /OUTPUT qualifier in conjunction with /EXTRACT, the LIBRARY command writes the output into the specified output file. If you specify /EXTRACT and do not specify /OUTPUT, the LIBRARY command writes the output into a file that has the same file name as the library and a file type of OBJ, MAR, EXE, HLP, or TXT, depending on the type of library.
/FULL
/FULL
Requests a full description of each module in the module name table.
module-name [Ident nn] Inserted dd-mmm-yyyy hh:mm:ss [n
symbols]
/GLOBALS
/GLOBALS /NOGLOBALS Controls, for object module libraries, whether the names of global symbols in modules being inserted in the library are included in the global symbol table. By default, the LIBRARY command places all global symbol names in the global symbol table. Use /NOGLOBALS if you do not want the global symbol names included in the global symbol table.
/HELP
/HELP Indicates that the library is a help library. When you specify the /HELP qualifier, the library file type defaults to HLB and the input file type defaults to HLP. For information on how to create help files, see the VAX/VMS Librarian Reference Manual.
/HISTORY
/HISTORY
Used with the /LIST qualifier to request that update history record
headers be listed (for libraries that contain a history) in the
format:
username operation n modules on dd-mmm-yyy hh:mm:ss
The operation referred to in the header has one of three values:
replaced, inserted, or deleted.
When used with /LIST/FULL, /HISTORY requests that the names of
updated modules be listed in addition to the update history headers.
/INSERT
/INSERT Adds the contents of one or more files to a library. If an object module file specified as input consists of concatenated object modules, the LIBRARY command creates a separate entry for each object module in the file; each module name table entry reflects an individual module name. If a macro or help file specified as input contains more than one definition, the LIBRARY command creates a separate entry for each one, naming the module name table entries according to the names specified on the .MACRO directives or in the HELP format. When the LIBRARY command inserts modules into an existing library, it checks the module name table before inserting each module. If a module name or global symbol name already exists in the library, the command issues an error message and does not add the module to the library.
/LIST
/LIST[=file-spec] /NOLIST Controls whether or not the LIBRARY command creates a listing that provides information about the contents of the library. By default, no listing is produced. If you specify /LIST without a file specification, the LIBRARY command writes the output file to the current SYS$OUTPUT device. If you include a file specification that does not have a file type, the LIBRARY command uses the default file type of LIS. No wildcard characters are allowed in the file specification. If you specify /LIST in conjunction with qualifiers that perform additional operations on the library, the LIBRARY command creates the listing after completing all other requests; thus, the listing reflects the status of the library after all changes have been made.
/LOG
/LOG /NOLOG Controls whether the LIBRARY command verifies each library operation. If you specify /LOG, the LIBRARY command displays the module name, followed by the library operation performed, followed by the library file specification.
/MACRO
/MACRO Indicates that the library is a macro library. When you specify /MACRO, the library file type defaults to MLB and the input file type defaults to MAR.
/NAMES
/NAMES /NONAMES Controls, when /LIST is specified for an object module library, whether the LIBRARY command lists the names of all global symbols in the global symbol table as well as the module names in the module name table. The default is /NONAMES, which does not list the global symbol names. If the library is a macro, help, or text library and you specify /NAMES, no symbol names are displayed.
/OBJECT
/OBJECT Indicates that the library is an object module library. Libraries are assumed to be object module libraries unless you specify the /SHARE, /MACRO, /TEXT, or /HELP qualifier. The library file type for object module libraries defaults to OLB and the input file type defaults to OBJ.
/ONLY
/ONLY=(module[,...]) Used with the /LIST or /CROSS_REFERENCE qualifier to specify the individual modules on which the LIBRARY command may operate. When you use the /ONLY qualifier, the LIBRARY command lists or cross references only those modules specified. If you specify more than one module, separate the module names with commas and enclose the list in parentheses. Wildcard characters (see Section 3.7 of the VAX/VMS DCL Concepts Manual) are allowed in the module name specifications.
/OUTPUT
/OUTPUT=file-spec Specifies, when used with the /EXTRACT, /COMPRESS, or /CROSS_REFERENCE qualifier, the file specification of the output file. For /EXTRACT, the output file contains the modules extracted from a library; for /COMPRESS, the output file contains the compressed library; for /CROSS_REFERENCE, the output file contains the cross-reference listing. No wildcard characters are allowed in the file specification.
/REMOVE
/REMOVE=(symbol[,...]) Deletes global symbol entries from the global symbol table in an object library. If you specify more than one symbol, separate them with commas and enclose the list in parentheses. If you want to verify the names of the deleted global symbols, specify the /LOG qualifier. Wildcard characters (see Section 3.7 of the VAX/VMS DCL Concepts Manual) are allowed in the symbol specifications.
/REPLACE
/REPLACE Replaces one or more existing library modules with the modules specified in the input files. The LIBRARY command first deletes any existing library modules with the same name as the modules in the input files. Then, the new version of the module is inserted in the library. If a module contained in an input file does not have a corresponding module in the library, the LIBRARY command inserts the new module in the library. /REPLACE is the LIBRARY command's default operation. If you use the /LOG qualifier with the /REPLACE qualifier, the LIBRARY command displays the names of each module that it replaces or inserts.
/SELECTIVE_SEARCH
/SELECTIVE_SEARCH Defines the input files being inserted into a library as candidates for selective searches by the linker. If you specify /SELECTIVE_SEARCH, the linker selectively searches the modules when the library is specified as a linker input file; the linker takes from the library, for the symbol table of its output image file, only those global symbols that have been referenced by other modules.
/SHARE
/SHARE Indicates that the library is a shareable image library. The library file type for shareable image libraries defaults to OLB and the input file type defaults to EXE.
/SINCE
/SINCE[=time] Used in conjunction with the /LIST qualifier to specify that only those modules dated later than a particular time be listed. You can specify an absolute time or a combination of absolute and delta times. See Section 2.5 of the VAX/VMS DCL Concepts Manual for details on specifying times. If you omit the /SINCE qualifier, all modules are listed regardless of the date. If you specify /SINCE without a date or time, all files created since the start of today are listed by default.
/SQUEEZE
/SQUEEZE /NOSQUEEZE Controls whether the LIBRARY command compresses individual macros before adding them to a macro library. When you specify /SQUEEZE, which is the default, trailing blanks, trailing tabs, and comments are deleted from each macro before insertion in the library. Use /SQUEEZE in conjunction with the /CREATE, /INSERT, and /REPLACE qualifiers to conserve space in a macro library. If you want to retain the full macro, specify /NOSQUEEZE.
/TEXT
/TEXT Indicates that the library is a text library. When you use the /TEXT qualifier, the library file type defaults to TLB and the input file type defaults to TXT.
/WIDTH
/WIDTH=n Controls the screen display width (in characters) when listing global symbol names. Specify the /WIDTH qualifier with the /NAMES qualifier to limit the line length of the /NAMES display. The default display width is the width of the listing device. The maximum width is 132.
Positional Qualifier
Additional information available:
/MODULE
/MODULE=module-name Specifies the module name of a text module. Unlike help, object, and macro libraries, text libraries use the file name from the input-file-spec parameter as the module name. If you want the module to have a different name from the input file name, use the /MODULE qualifier to identify the added module. No wildcard characters are allowed in the module name. You can also use the /MODULE qualifier to enter a text module interactively. If you specify SYS$INPUT as the input file specification and also issue the /MODULE qualifier, the LIBRARY command includes the text you enter from the console in the specified library module. (To terminate the console input, press CTRL/Z.)
Examples
1. $ LIBRARY/CREATE TESTLIB ERRMSG,STARTUP
The LIBRARY command creates an object module library named
TESTLIB.OLB and places the modules ERRMSG.OBJ and STARTUP.OBJ in the
library.
2. $ LIBRARY/INSERT TESTLIB SCANLINE
$ LINK TERMTEST,TESTLIB/LIBRARY
The LIBRARY command adds the module SCANLINE.OBJ to the library
TESTLIB.OLB. The library is specified as input to the linker by
using the /LIBRARY qualifier on the LINK command. If the module
TERMTEST.OBJ refers to any routines or global symbols not defined in
TERMTEST, the linker will search the global symbol table of library
TESTLIB.OLB to resolve the symbols.
3. $ LIBRARY/EXTRACT=(ALLOCATE,APPEND)/OUTPUT=MYHELP -
$_SYS$HELP:HELPLIB.HLB
The LIBRARY command specifies that the modules ALLOCATE and APPEND
be extracted from the help library HELPLIB.HLB and output to the
file MYHELP.HLP.