HP OpenVMS Systems

C++ Programming Language
Content starts here lnkhelp.HLP


file-spec [,...]

The CXXLINK facility is layered on top of the OpenVMS Linker utility. The CXXLINK command accepts the same parameters and qualifiers as the OpenVMS Linker utility. Refer to the online help for the OpenVMS Linker utility, HELP LINK, for more information.


Refer to the online help for the OpenVMS Linker utility, HELP LINK, for information. Additionally, the following qualifiers are accepted by the CXXLINK command:

o /[NO]LOG_FILE [=filename]



o /PRELINK=(option[,option2])

o /REPOSITORY=(writeable-repository[,readonly-repository,...])

o /USE_LINK_INPUT[=filename]



The following qualifers should no longer be used. Instead, use the corresponding /PRELINK=option qualifier.

Additional Information on:


  • /LOG_FILE[=filename]

    /LOG_FILE[=filename] /NOLOG_FILE (D)

    Turns on verbose or verify mode to write each phase of instantiation to the specified log file. This option is useful as a debugging aid.



    Link with /MODEL=ANSI versions of the C++ libraries. See CXX/MODEL=ANSI for details.



    Forces the standard library template instantiations in the user's repository to be preferred at link time over the ones in the standard library. This is useful, for example, if you want debugging versions of the instantiations. This option is useful only when used in conjunction with CXX/DEFINE=__FORCE_INSTANTATIONS.


    Specifies one or more prelink options. If multiple options are specified, they must be enclosed in parentheses and separated by commas. You can specify the following options:


    Tells CXXLINK not to use the CXX$LINK.OLB library found in a repository directory. Instead, CXXLINK looks for the specific object files and adds them to the linker options file.

    Use of this qualifier also prevents CXXLINK from creating and populating a CXX$LINK.OLB object library in the repository directory.


    Tells CXXLINK to use the CXX$LINK.OLB found in a repository directory. Specifying this option might improve link-time performance but in some cases could produce unresolved template symbols.


    Controls whether CXXLINK bypasses the template instantiation process. By default, CXXLINK performs at least one partial link to determine whether there are any unresolved template symbols that need to be instantiated. If you know that your program does not use templates, then you can specify /PRELINK=NOTEMPLATE_PRELINK to bypass this partial link and proceed directly to the final link.

    This qualifier has the same effect as specifying /TEMPLATE_PRELINK or /NOTEMPLATE_PRELINK.

    Because in the future, the OpenVMS Linker Utility might require that /TEMPLATE_PRELINK be removed, it is recommended that users modify their use of CXXLINK to use this new form of the qualifier.


    Controls whether, if initial link fails, CXXLINK adds to the linker options file the names of any object libraries specified on the command line using the /INCLUDE= syntax.

    CXXLINK also checks for any /INCLUDE= library when SYS$INPUT:/OPT is used.

    CXXLINK does not parse any other linker options file for /INCLUDE= syntax.

    Because of the order of dependencies between template instantions and object files, the OpenVMS Linker Utility sometimes fails to extract all the required modules from an object library that was specified using /INCLUDE=. To work around the problem CXXLINK provides that library as input to the linker in its linker options file without the /INCLUDE= syntax, thereby allowing the linker to scan that object library one more time for missing symbols.

    This qualifier should be used only if a CXXLINK user requires more control over which object files are included from a given object library.


    Name the repository directories. The first item in the list is considered the writeable repository, and the remaining items (if any) are considered repositories that are read only.

    If you do not specify the /REPOSITORY qualifier, CXXLINK uses the default respository, SYS$DISK:[.CXX_REPOSITORY].



    By default, CXXLINK creates a temporary .OPT file in the [.cxx_repository] directory. If the [.cxx_repository] directory does not exist, the .OPT file is created in the users current directory. CXXLINK deletes this file.

    If you specify /USE_LINK_INPUT, CXXLINK saves the option file passed to LINK in a file named CXX_REPOSITORY.OPT in the user's current directory (SYS$DISK:[]CXX_REPOSITORY.OPT). CXXLINK does not delete this file.

    If you specify /USE_LINK_INPUT=filename CXXLINK saves the option file passed to LINK in the filename specified. Because the temporary file that CXXLINK uses is renamed to the file name specified, "filename" must reside on the same disk as the [.CXX_REPOSITORY] directory. CXXLINK does not delete this file.


    Direct CXXLINK to display its version identification and then exit.


    Customers with support contracts should seek support for problems through local customer support centers.

    Customers who do not have support contracts are encouraged to mail problem reports to

    Although these reports will certainly be used as a source of input for fixing problems for new releases, we cannot give the reports individual attention. We can take remedial action only on a best-effort basis.

    If you have questions, suggestions, or comments, please send mail to

    When reporting problems to HP, please provide the following information:

    o Name and version of compiler (from a listing file) o Name and version of operating system o Smallest possible complete source and commands needed to reproduce the problem o An example of the incorrect results and the desired results