Customizing the configuration file

The configuration file specifies information that the compiler uses when you invoke it.

If you are running on a single-user system, or if you already have a compilation environment with compilation scripts or makefiles, you may want to leave the default configuration file as it is. Otherwise, especially if you want many users to be able to choose among several sets of compiler options, you may want to add new named stanzas to the configuration file and to create new commands that are links to the existing commands. For example, to create a link to the xlc_r command, you could specify something similar to the following:

ln -s /bin/xlc_r /home/lisa/bin/my_xlc++

When you run the compiler under another name, it uses the options, libraries, and so on, that are listed in the corresponding stanza.

Notes:
  1. The configuration file contains other named stanzas to which you may want to link.
  2. The configuration file contains the GNU C and C++ options that are accepted and translated by gxlc and gxlc++ and their mapping XL C/C++ compiler options. All other GNU options that are not included in the configuration file are ignored or generate an error. If the negative form of a GNU option exists, then the negative form is also recognized and translated by gxlc and gxlc++.
  3. If you make any changes to the default configuration file and then move or copy your make files to another system, you will also need to copy the changed configuration file.
  4. Installing a compiler program temporary fix (PTF) or an upgrade may overwrite the /etc/vac.cfg file. Therefore, be sure to save a copy of any modifications you have made before doing such an installation.
  5. If you upgrade the operating system, you must change the symbolic link in /etc/vac.cfg to point to the correct version of the configuration file.
  6. You cannot use tabs as separator characters in the configuration file. If you modify the configuration file, make sure that you use spaces for any indentation.
  7. If you are mixing Message-Passing Interface (MPI) and threaded programming, use the appropriate stanza in the vac.cfg file to link in the proper libraries and to set the correct default behavior.
  8. The compiler return code of 41 indicates that a configuration file error has been detected.