[an error occurred while processing this directive]

HP OpenVMS Systems

C Programming Language
Content starts here HP C

HP C
Installation Guide for
OpenVMS Industry Standard 64 Systems


Previous Contents


Chapter 2
Installing HP C

This chapter explains how to install HP C:

  • Section 2.1 describes multiple version support.
  • Section 2.2 contains a step-by-step description of the installation procedure.
  • Section 2.3 shows a sample installation with an alternate compiler.
  • Section 2.4 covers error recovery considerations.

2.1 Installing and Using Multiple Compiler Versions

HP C I64 Version 7.3 and higher provides support for installing and using multiple versions of the compiler on the same node.

During installation of Version 7.3, if a previous version of the compiler is already installed, you have the opportunity to preserve that compiler rather than overwrite it. If you do choose to preserve the currently installed compiler, the new compiler version will become the system default, and the previous version will remain as an alternate.

Users can make the choice to use an alternate compiler instead of the installed default system compiler by running a command procedure that changes the behavior of the cc command for the process that invokes it.

2.1.1 Displaying and Selecting the Compiler Version

This kit provides two command procedures to display and control which HP C compiler is used by a process:

  • SYS$SYSTEM:DECC$SHOW_VERSIONS.COM
    This procedure displays the HP C compilers available on the system, along with their version numbers. It also displays which compiler is the default for the current process. The procedure takes an optional version-number argument. Examples:


    $ @SYS$SYSTEM:DECC$SHOW_VERSIONS 
     
    The following  HP C compiler(s) are available in 
    SYS$COMMON:[SYSEXE]: 
     
    Filename                       Version     Defaults 
    --------------------------------------------------------- 
    DECC$COMPILER.EXE              T7.3-018    System Default 
    DECC$COMPILER_S07_01-013.EXE   S7.1-013 
    DECC$COMPILER_T07_03-017.EXE   T7.3-018 
    DECC$COMPILER_V07_01-011.EXE   V7.1-011 
    DECC$COMPILER_V07_02-001.EXE   V7.2-001 
    DECC$COMPILER_V07_02-022.EXE   V7.2-022    Process Default 
    


    $ @SYS$SYSTEM:DECC$SHOW_VERSIONS.COM V7.2 
     
    The following HP C compiler(s) are available in 
    SYS$COMMON:[SYSEXE]: 
     
    Filename                      Version 
    --------------------------------------- 
    DECC$COMPILER_V07_02-001.EXE   V7.2-001 
    DECC$COMPILER_V07_02-022.EXE   V7.2-022    Process Default 
    
  • SYS$SYSTEM:DECC$SET_VERSION.COM
    This procedure sets up process logicals that point to an alternate HP C compiler in SYS$SYSTEM, or it removes the process logicals to revert to using the default system compiler. The procedure takes one optional argument: a version number or the keyword SYSTEM. If no argument is specified, all compiler versions are displayed, as with @sys$system:decc$show_versions.com, and you are then prompted to enter a version number or the keyword SYSTEM.
    The SYSTEM argument selects the installed system compiler, which is the one displayed with the filename DECC$COMPILER.EXE in the output of decc$show_versions.com. Alternate compilers are shown in that output with their version number appended to the simple filename; for example, the version 7.2-001 compiler is shown as DECC$COMPILER_V07_02-001.EXE.
    To select a compiler, pass a full ident string or enough of the ident string to be unique. For example: to select the V7.2-001 compiler from the previous list, pass V7.2-001 or V7.2 to the decc$set_version.com routine.
    When this procedure is run in a process, subsequent cc commands invoke the selected compiler version (until the procedure is run again). The process-level logicals used do not affect other processes or users on the system.
    The decc$set_version.com sets up logicals DECC$COMPILER and DECC$COMPILER_MSG to point to the location of the target compiler and its message file. In addition it issues a "set command" to select the appropriate CDL file to select the correct set of qualifiers for the given compiler version. Please remember that Set commands are not inherited by subprocesses. Make sure that all subprocesses reissue the necessary decc$set_version.com command.

2.1.2 Installation Procedure Changes

When you install HP C I64 Version 7.3 or higher on a system that already has a previous version of the compiler installed, you are given the chance to preserve that currently installed system compiler. To do this, during installation, your system administrator needs to answer NO to the question about default options:


Do you want the defaults for all options? [YES] NO <RET> 

And then answer YES to the question about making alternate compilers available:


Would you like to set up your system for running alternate versions of C? [NO] YES <RET> 

If you answer YES to the first question above (about the default options), you will not receive the second prompt (to set up your system for running alternate versions of C), and the installation proceeds in the traditional manner, overwriting the currently installed system compiler.

If you answer YES to the second prompt, the new compiler is installed as the system default compiler, and the previously installed compiler is set up as an alternate compiler with a name based on its ident.

2.2 How to Install HP C

The installation procedure loads HP C product distribution files onto the system disk on the system where you perform the installation.

Follow these steps to install HP C from the OpenVMS I64 Software Products Library CD-ROM set:

  1. Log in to a privileged account on the system (or cluster) where you will install HP C. This account must have the following privileges enabled:
    • BYPASS
    • CMKRNL
    • SYSLCK
    • SYSPRV

    If your process has the SETPRV privilege, you can enable these privileges by entering the following command:


    $ SET PROCESS/PRIVILEGE=(BYPASS,CMKRNL,SYSLCK,SYSPRV)
    

    To check whether your process has these privileges enabled, enter the following command:


    $ SHOW PROCESS/PRIVILEGES
    
  2. To obtain the kit directory location of the HP C product distribution files on the appropriate OpenVMS I64 Software Product Library CD-ROM (media CD-ROM), do one of the following:
    • Use the CDMENU utility provided on the media CD-ROM.
    • View the CD-ROM master index file on the media CD-ROM.
    • Contact the appropriate system manager.

    For information about using the CDMENU utility and the CD-ROM files on the media CD-ROM set, see the Software Product Library CD-ROM User's Guide (media CD-ROM user guide), which accompanies the media CD-ROM distribution kit. The media CD-ROM user guide and CD-ROM master index file are provided as online files in the [README] directory on the first media CD-ROM.
  3. To determine whether the appropriate media CD-ROM is already mounted on your system, enter the following command:


    $ SHOW DEVICE DKA400
    

    Note

    DKA400 is the device name used in examples in this document to show where the appropriate media CD-ROM has been mounted.
  4. If the media CD-ROM containing the HP C installation files is not mounted, either contact the appropriate system manager or insert the appropriate media CD-ROM (write down the volume label) into an available CD-ROM drive. Enter the appropriate MOUNT command to mount the media CD-ROM (omit the /FOREIGN qualifier), such as the following:


    $ MOUNT DKA400 label
    

    Where label is the volume label of that media CD-ROM.
  5. To check that you have located the correct CD-ROM device and directory, use the following DIRECTORY command:


    $ DIRECTORY *.PCSI
     
    Directory DKA400:[dir.subdir]
    HP-I64VMS-C-V0701-nnnn-1.PCSI
    Total of 2 files.
    
  6. To extract the HP C online release notes before you install HP C, enter the following command:


    $ PRODUCT EXTRACT RELEASE_NOTES C /SOURCE=disk:[dir]
    

    In this command, disk:[dir] is the specification of the disk and directory containing the product installation files. If your process default directory is the directory on the CD-ROM that contains the HP C product distribution files, you can specify the /SOURCE directory as /SOURCE=[].
    You can view or print the file CC.RELEASE_NOTES before you continue with the installation (next command). For example:


    $ TYPE/PAGE CC.RELEASE_NOTES
    
  7. To install the HP C compiler, enter the following PRODUCT INSTALL command:


    $ PRODUCT INSTALL C /SOURCE=node::disk:[kit_dir]
    

    Where disk:[kit_dir] is the specification of the disk and directory containing the product installation files.
    The following text appears:


       1 - HP I64VMS C V7.1-002            Layered Product 
       2 - All products listed above 
       ? - Help 
       E - Exit 
     
    Choose one or more items from the menu: 1 
     
    The following product has been selected: 
        HP I64VMS C V7.1-002             Layered Product 
     
    Do you want to continue? [YES] [Return]
     
    Configuration phase starting ... 
     
    You will be asked to choose options, if any, for each selected product and for 
    any products that may be installed to satisfy software dependency requirements. 
     
    HP I64VMS C V7.1-002: HP C for OpenVMS Industry Standard 
     
       Copyright 2004 Hewlett-Packard Development Company, L.P. 
     
       This software product is sold by Hewlett-Packard Company 
     
       PAKs used: C-USER 
     
    Do you want the defaults for all options? [YES] 
     
      Copyright 2004 Hewlett-Packard Development Company, L.P. 
     
       HP, the HP logo, Alpha and OpenVMS are trademarks of 
       Hewlett-Packard Development Company, L.P. in the U.S. and/or 
       other countries. 
     
       Confidential computer software.  Valid License from HP 
       required for possession, use or copying.  Consistent with 
       FAR 12.211 and 12.212, Commercial Computer Software, Computer 
       Software Documentation, and Technical Date for Commercial 
       Items are licensed to the U.S. Government under vendor's 
       standard commercial license. 
     
    Do you want to review the options? [NO] [Return]
     
    Execution phase starting . . . 
     
    The following product will be installed to destination: 
       HP I64VMS C V7.1-002                   DISK$ICCSYS:[VMS$COMMON.] 
     
    Portion done: 0%...90%...100% 
     
    The following product has been installed: 
       HP I64VMS C V7.1-002                   Layered Product 
     
    %PCSI-I-IVPEXECUTE, executing test procedure for HP I64VMS C V7.1-002 ... 
    %PCSI-I-IVPSUCCESS, test procedure completed successfully 
     
    HP I64VMS C V7.1-002: HP C for OpenVMS Industry Standard 64 for 
    Integrity Servers 
     
    The compiler is now available from the command line of newly created processes. 
     
        To enable access to the compiler from the command line of a currently 
        running process (such as this one), execute: 
        SET COMMAND/TABLE=SYS$COMMON:[SYSLIB]DCLTABLES 
     
     The release notes are located in the file SYS$HELP:CC.RELEASE_NOTES 
     for the text form and SYS$HELP:CC_RELEASE_NOTES.PS for the postscript form. 
    $ 
    
  8. Installation takes about 2-5 minutes (depending on your system. When installation has been completed, the DCL $ prompt reappears.
  9. To obtain a list of files installed, enter the following command:


    $ PRODUCT SHOW OBJECT /PRODUCT=C
    

To use other features of the PCSI utility, see the POLYCENTER Software Installation Utility User's Guide.

2.3 Sample Installation with Alternate Compiler

The following is a sample installation run on a system that had a previous version of HP C installed. In this sample, the new version of the compiler is installed as the default compiler, but a previous version of the compiler is kept as an alternate compiler. See Section 2.1 for more information on installing and using multiple compiler versions.


 
$ product install c /source=C$:[disk1.cpri.bvbv.bl50.saveset] 
 
The following product has been selected: 
 
    HP I64VMS C V7.3-18                    Layered Product [Installed] 
 
Do you want to continue? [YES] 
 
Configuration phase starting ... 
 
You will be asked to choose options, if any, for each selected product and for 
any products that may be installed to satisfy software dependency requirements. 
 
HP I64VMS C V7.3-18: HP C for OpenVMS Industry Standard 
 
   Copyright 2003, 2004-2007 Hewlett-Packard Development Company, L.P. 
 
   This software is sold by Hewlett-Packard Company 
 
   PAKs used: C or C-USER 
 
Do you want the defaults for all options? [YES] no 
 
   HP I64VMS VMS V8.3 [Installed] 
 
   * Configuration options for this referenced product cannot 
   * be changed now because the product is already installed. 
   * (You can use PRODUCT RECONFIGURE later to change options.) 
 
   Copyright 2003, 2004-2007 Hewlett-Packard Development Company, L.P. 
 
     HP, the HP logo, Alpha and OpenVMS are trademarks of 
     Hewlett-Packard Development Company, L.P. in the U.S. and/or 
     other countries. 
 
     Confidential computer software. Valid license from HP 
     required for possession, use or copying.  Consistent with 
     FAR 12.211 and 12.212, Commercial Computer Software, Computer 
     Software Documentation, and Technical Data for Commercial 
     Items are licensed to the U.S. Government under vendor's 
     standard commercial license. 
 
     Multi_Version Support: 
 
     If you would like to set up your system to be able to run different 
     versions of the compiler then answer yes. The installation procedure will 
     then copy the previously installed C compiler and associated files along 
     side the new compiler in this kit with a suffix appended to the name that 
     corresponds to the version number.  Users may then execute 
     DECC$SET_VERSION.COM to run an alternate version of the compiler 
     and DECC$SHOW_VERSIONS.COM to show available versions at anytime 
     after this installation. 
 
 Would you like to set up your system for running alternate versions of C? [NO] yes 
 
Do you want to review the options? [NO] 
 
Execution phase starting ... 
 
The following product will be installed to destination: 
  HP I64VMS C V7.3-18                    DISK$ICXXSYS:[VMS$COMMON.] 
 
Portion done: 0%...40%...50%...60%...70%...80%...90%...100% 
 
The following product has been installed: 
  HP I64VMS C V7.3-18                    Layered Product 
 
%PCSI-I-IVPEXECUTE, executing test procedure for HP I64VMS C V7.3-18 ... 
%PCSI-I-IVPSUCCESS, test procedure completed successfully 
 
HP I64VMS C V7.3-18: HP C for OpenVMS Industry Standard 
 
   The release notes are located in the file SYS$HELP:CC.RELEASE_NOTES 
 
     for the text form and SYS$HELP:CC_RELEASE_NOTES.PS for the postscript form. 
 
   A startup file SYS$STARTUP:DECC$STARTUP.COM has been provided. 
 
      It contains commands which can be executed after the product install 
      procedure has been run and at startup to allow for the best compilation 
      performance. You may want to invoke this command file from your 
      system's site-specific start up file.  This command file does not 
      have to be invoked for correct operation of HP C. 

2.4 Recovering from Installation Errors

Errors can occur during the installation if any of the following conditions exist:

  • The operating system version is incorrect.
  • The privileges or disk space for successful installation are insufficient.

For descriptions of error messages generated by these and related conditions, see the OpenVMS I64 documentation on system messages and software installation or the online HELP/MESSAGE command. Take the appropriate action described in the message.

For information on system requirements for installing HP C, see Section 1.4.

To report a problem to HP, see Section 3.7.


Chapter 3
After Installing HP C

You can perform the following tasks after HP C is installed:

3.1 Running the Installation Verification Procedure Separately

The HP C Installation Verification Procedure (IVP) runs automatically during HP C installation.

If system problems occur, you should run the HP C IVP separately to ensure the integrity of the installed files. To run the IVP, enter the following command:


$ @SYS$TEST:DECC$IVP.COM

If any problems are encountered, a message like one of the following appears:


HP C VERSION 7.n Installation Verification FAILED 
HP C VERSION 7.n Installation Verification did not run 
HP C VERSION 7.n Installation Verification ABORTED 

3.2 Modifying the System-Wide Startup Command Procedure

You must edit the system-wide startup file to provide for automatic startup of HP C when your system is rebooted.

Add the command line that starts HP C to the system startup file, SYS$MANAGER:SYSTARTUP_VMS.COM. HP C cannot start until after the network has started, so you must position this new command line after the line that invokes the network startup command procedure. The following example shows the network startup command line:


$ @SYS$MANAGER:STARTNET.COM

3.3 Making the Product Usable on a VMScluster

If you want to run HP C on multiple nodes of an OpenVMS cluster, first check to see that you have the appropriate software license (see Section 1.6). Then perform the following steps after you install HP C:

  1. Enter the LICENSE LOAD command, as described in the HP OpenVMS License Management Utility Manual, to activate the license on each node in the cluster on which HP C is to be executed.
  2. Log in to the installation node and use the OpenVMS INSTALL Utility to determine whether DECC$COMPILER.EXE is a known image:


    $ INSTALL
    INSTALL> LIST SYS$SYSTEM:DECC$COMPILER.EXE
    

    If the output of the preceding LIST command shows DECC$COMPILER.EXE to be a known image, perform all of the following steps. Otherwise, perform all of the following steps except step 4b.
  3. Log in to a node on the cluster.
  4. Run the OpenVMS INSTALL utility as described in Section 3.6.2, with the following exceptions:
    1. After invoking the OpenVMS INSTALL utility, enter the following command:


         INSTALL> REPLACE SYS$LIBRARY:DCLTABLES.EXE
      

      This command updates the DCL tables. It should be entered on each node in the cluster, regardless of whether you activated the HP C license (step 1) on all of the nodes.
    2. If DECC$COMPILER.EXE was established as a known image using the INSTALL utility, enter the following command:


         INSTALL> REPLACE SYS$SYSTEM:DECC$COMPILER.EXE
      

      This command replaces the INSTALL entry for DECC$COMPILER.EXE. It should be entered only on those nodes on which you activated the HP C license in step 1. (In most cases, all of the nodes will be licensed.)
  5. Repeat steps 3 and 4 for each node of the cluster.

3.4 Making the CC Command Available After Installation

HP C is now installed and can be invoked by all users with the CC command.

The installation procedure modifies the DCL command table so that the CC command is recognized and processed. However, the previous command table is still in effect for those users who are currently logged in.

All logged-in users who want to use the CC command must log out and log in again, or use the following DCL command:


$ SET COMMAND /TABLES=SYS$LIBRARY:DCLTABLES

3.5 User Account Requirements

Some products cannot be used unless certain privilege and quota requirements are met by user accounts. The following sections describe the privilege and quota requirements needed to work with HP C.

3.5.1 User Privileges

To use HP C, each account must have TMPMBX and NETMBX privileges. Use the OpenVMS AUTHORIZE utility to determine whether users have the privileges they require.

3.5.2 User Account Quotas

To use HP C, a user account does not need to meet any special quota requirements. However, for users who will be compiling very large programs (many program units compiled together), consider adjusting working set (WSDEF, WSQUOTA, WSEXTENT) and pagefile (PGFLQUOTA) account quotas to improve performance.

Use the OpenVMS Authorize Utility from a suitably privileged account to change the process quotas in the user authorization file (UAF). Some sites may restrict the use of the Authorize Utility to certain accounts or people.

After the quotas for the account have been changed, the user should log out of the account and log in again for the new quotas to take effect.

For information on using the Authorize Utility, see the OpenVMS System Manager's Manual: Essentials.

3.6 Enhancing HP C Performance

The following sections include information on system tuning and explain how to install HP C as a shared image.

3.6.1 Tuning Your System

After you install HP C, you might want to adjust your system to enhance performance or lower the use of some system resources. General information about tuning an OpenVMS system is included in the Guide to OpenVMS Performance Management.


Previous Next Contents