Download and install Compaq C

»

Developers' toolkit supplement

Product information

» DTK history
» Download kits
» License and support
» Programmer's guide online
» Related web sites

Related links

» HP software
» Tru64 UNIX
» Developers' Toolkit supplement
» DSPP developer edge
» Info library
» Documentation
» Try our software
» Purchasing
» Site map
customer times newsletter link
This document contains the information you will need to install the Developers' Toolkit Supplement version of the Compaq C Compiler for Compaq Tru64 UNIX V4.0D and later systems.

» Contents of kit
» Operating system requirements
» License requirements
» cc.alt version of om
» libots3
» cc man pages
» dense malloc library
» New header files
» Operation of compiler
» Installation instructions

 
 Contents of kit
 

The compiler kit is contained in compressed tar file DTC650.tar.gz which unpacks into directory Compaq_C_Compiler. That directory contains two subdirectories, doc and kit. The doc directory contains installation.txt (the file you are now reading) and release_notes.txt. These files as well as additional documentation will be available online once the kit is installed.

The kit directory contains two subsets:

  • DTCCMPLR650 - compiler
  • OTABASE220 - runtime support library for OpenMP/parallel directives

Operating system requirements

This kit will install and run on all supported versions of Compaq Tru64 UNIX Version 4.0D and later.

For 4.0D you should install the following operating system patch in addition to the compiler kit. This is required to obtain a sufficiently modern cc driver.

  • DIGITAL UNIX V4.0D Patch Kit 4 (or later)

If you do not install the required patch the kit will automatically install one for you. If it does, you should de-install the kit before modifying your system with installupdate or dupatch to avoid conflicts.

License requirements

The new Developers' Toolkit (DTK) compiler, unlike the compiler that shipped on the base system, will test for an active LMF license PAK for OSF-DEV. This license should already be active on systems on which software development is done.

cc.alt version of om

This kit creates a symbolic link to the cc.alt version of om (the post-link optimizer invoked by cc -om) if it is installed. That is

   /usr/lib/cmplrs/cc.dtk/om -> 
   ../cc.alt/om

The cc.alt kit is contained in the CMPDEVALT subset. If for some reason you want to change this symbolic link (e.g. you install or delete the CMPDEVALT subset after the kit is installed) you can manipulate the link (with root privileges) using:

   # setld -c DTCCMPLR650 status
   # setld -c DTCCMPLR650 om.sys
   # setld -c DTCCMPLR650 om.ccalt

libots3

The OTABASE220 subset contains an updated version of the runtime support library libots3 for the OpenMP and old-style manual decomposition features of Compaq C (and Fortran). Some older versions of that library did not contain the full OpenMP API.

The installation procedures for this kit automatically determine whether or not the libots3 library on your system is functionally sufficient. If not, it installs the OTABASE220 subset to bring it up to date.

However, this version (OTABASE 220) also contains bug fixes not yet released in patch kits, and generally you should install it unless you know you have already installed a higher version. You can use setld -i | grep OTABASE to show what version you have installed.

Please note that if you are building an application for distribution that relies on this library, the machines on which that application will run may not contain an updated libots3 library. There are several ways to address this problem (though we recommend the first):

  1. Link the application with libots3.a.
  2. Redistribute libots3.so with the application.
  3. Require that your customers obtain the kit from the web, and install it on their systems.

cc man pages

This kit installs a new cc man page. The old cc man page will continue to be available as cc-nodtk in section 1 of the manual and can be accessed by "man cc-nodtk". Deinstalling this new compiler restores the man page for the base system compiler to section 1.

In addition to the English version, this kit contains a Japanese translation for the cc man page that will be installed in the following directory if it exists at installation time:

   /usr/i18n/share/ja_JP.deckanji/man/man1

Note that if Japanese support is installed after this kit, the translated version of this new man page will not be present (and thus "man cc" will likely return the Japanese translation of the man page for the C compiler that shipped with the base operating system, not the new DTK compiler).

Dense malloc library

This kit installs a new library, /usr/ccs/lib/libdensemalloc.a, onto V5.1 systems. This library provides an alternate set of malloc routines that implement a "dense malloc" memory allocation strategy that can significantly improve the runtime performance of certain programs.

This library is not installed on V5.1B systems since libdensemalloc is a stable part of the operating system starting with this version.

See Release Notes Section 5 for a discussion of this allocation strategy and a description of how to use this new library.

If the kit installs this new library it also installs a new malloc(3) man page. The old malloc(3) man page will continue to be available and can be accessed by "man malloc-nodtk". Deinstalling the kit will restore the original man page.

New header files

This kit installs new header files into /usr/include.dtk. This directory is added to the compiler's #include search path automatically by the cc driver so that the header files will be read during "normal" compiles.

These header files include new C99 headers (e.g. stdbool.h), "supplemental" headers that contain new C99 declarations (e.g. stdio.h), and headers that define the parallel decomposition APIs (omp.h, mpc.h).

See Release Notes Section 6 for a discussion of these new header files and suggestions about what to do if your application identifiers conflict with the new C99 reserved library names.

Operation of compiler

Once installed, the DTK compiler will function as the default "cc" unless -nodtk, -oldc, or "-W*,-static*" appears on the command-line or is implied by environment variable DEC_CC. For those exceptional cases, the compiler that shipped on the base system will be used.

Note that "-W*,-static*" designates a collection of undocumented options used for building kernel objects and device drivers. The doconfig utility uses this switch and hence will always use the base system compiler for building kernel files. Anyone building kernel layered products should use this switch as well.

Deinstalling the DTK compiler (by deleting its subset using setld) restores the behavior of your system to use the system compiler for all compiles by default.

Installation instructions

  1. It is advisable to back up your system disk before installing any software. Refer to the your system documentation for further details.

  2. Log in as superuser (root).

  3. Delete any installed versions of the DTK Supplement compiler.
       # /usr/sbin/setld -i | grep DTKCMP
    
       # /usr/sbin/setld -i | grep DTCCMP
    
       # /usr/sbin/setld -d <subset>
    
  4. Delete any DTK driver patch kits.
       # /usr/sbin/setld -i | grep DTAPATCH
    
       # /usr/sbin/setld -d <subset>
    
  5. If you are on a V4.0D system, install the appropriate operating system patch to update your cc driver program, for example, DIGITAL UNIX V4.0D Patch Kit 4 (or later).

    As described above, if you do not do this the kit will automatically update the cc driver for you. If it does you should deinstall this kit before modifying your system with the dupath or installupdate utilities.

  6. Access the files as follows.

    Download DTC650.tar.gz to a temporary directory. That file may be unpacked as follows:

       # gunzip -dc DTC650.tar.gz | tar xvf -
    

    Then cd to the Compaq_C_Compiler directory.

  7. Install the kit directory:
       # /usr/sbin/setld -l kit
    

    That will install at least the first of these items:

    • Compaq C Compiler for Developers Toolkit Supplement
    • Compaq Compiled Code Support Library #220

    It will install the second only if the libots3 library on your system is insufficient.

  8. After the installation is complete, you are free to delete the Compaq_C_Compiler directory.