Contents

Installing the product

  • XL Fortran Version 9.1 packaging
  • Installing IBM XL Fortran Advanced Edition V9.1 for Linux
  • System prerequisites
  • Prerequisite tasks or conditions
  • Installation
  • Product migration installation on RHEL3 U3
  • Querying for installed packages
  • Enabling the XL Fortran V9.1 man pages
  • Setting the correct NLSPATH
  • Configuring the compiler
  • Viewing the documentation
  • Setting up the short compiler invocation command
  • Creating a symbolic link for a compiler in the /usr/bin subdirectory
  • Modifying the PATH environment variable
  • Testing the installation
  • Uninstalling XL Fortran
  • Procedures for advanced users

  • Installing multiple compiler versions on the same RHEL3 U3 system
  • Using the latest run-time environment with multiple Fortran compiler versions (RHEL3 U3 only)
  • Trying out a PTF update to the compiler
  • Troubleshooting the configuration

  • Error: Could not determine location of 32-bit or 64-bit GCC (RHEL3 U3, RHEL4)
  • Error: Could not run the license acceptance tool (RHEL4,  SLES9, Y-HPC)
  • Problem: There is not enough debugging information

  • Installing the product

    This document contains essential information about installing IBM XL Fortran Advanced Edition V9.1 for Linux. Please read it carefully before installing this product. Be sure to read the README file on the CD-ROM, which contains the most current information about the product. After you install the product, you can find the README file in the xlf_path/xlf/9.1 directory.

    Note:
    xlf_path is the location of the compiler on your system. If the compiler is installed in the default location, xlf_path is /opt/ibmcmp.

    XL Fortran Version 9.1 packaging

    The following packages are supplied on the CD. Use rpm to review them:

    Table 1.

    Required XL Fortran V9.1 packages
    Package Name Package Description
    xlsmp.msg.rte SMP run-time messages
    xlsmp.rte SMP run-time dynamic libraries
    xlsmp.lib SMP run-time static libraries
    xlmass.lib IBM(R) Mathematical Acceleration Subsystem (MASS) libraries
    xlf.msg.rte Fortran run-time environment messages
    xlf.rte Fortran run-time environment
    xlf.rte.lnk Fortran run-time environment links
    xlf.lic XL Fortran V9.1 license
    xlf.lib Fortran compiler libraries
    xlf.cmp Fortran compiler
    xlf.samples XL Fortran V9.1 samples
    xlf.help XL Fortran V9.1 documentation

    The supported locales are as follows:


    Installing IBM XL Fortran Advanced Edition V9.1 for Linux

    The IBM XL Fortran Advanced Edition V9.1 for Linux installation uses the Red Hat Package Manager (RPM), which is the standard tool for installing Linux(TM) packages. RPM is shipped with the operating system.

    The high-level steps are:

    1. Become the root user, or a user with administrator privileges.
    2. Install the packages.
    3. Enable the compiler man pages.
    4. Set the correct NLSPATH.
    5. Configure the compiler.
    6. Set up the environment for the invocation commands.
    7. Test the installation.

    System prerequisites

    Prerequisite tasks or conditions

    You must have root user access to install XL Fortran V9.1.

    Pre-installation required packages

    The tables in this section list the GCC and operating system packages that must be installed before you install the compiler:

    Table 3.

    Required GCC and RHEL3 U3 operating system packages
    Package name Version requirements
    gcc 3.2.3
    gcc-c++ 3.2.3
    glibc-devel 2.3.2
    libstdc++-devel 3.2.3

    Table 4.

    Required GCC and RHEL4 operating system packages
    Package name Version requirements
    gcc 3.4.3
    gcc-c++ 3.4.3
    glibc-devel 2.3.4
    libstdc++-devel 3.4.3
    libgcj 3.4.3

    Table 5.

    Required GCC and SLES9 operating system packages
    Package name Version requirements
    gcc 3.3.3
    gcc-c++ 3.3.3
    gcc-64bit 9
    glibc-devel-64bit 9
    libstdc++-devel-64bit 9
    java2 1.3.1
    java2-jre 1.3.1

    Table 6.

    Required GCC and Y-HPC operating system packages
    Package name Version requirements
    gcc 3.3.3
    gcc-ppc32 3.3.3
    gcc-c++ 3.3.3
    libgcj 3.3.3

    Verifying that the required packages are on the system

    You can use the following command to verify that you have the required packages installed:

       rpm -qa | grep package_name
    

    For example, to see whether gcc-c++ is installed, query for the gcc-c++ package as follows:

       rpm -qa | grep gcc-c++
    

    If gcc-c++ version 3.3.3 is installed, you will get a result similar to the following output:

       gcc-c++-3.3.3-43.24
    

    Exception: On RHEL3 U3 and RHEL4, both 32-bit and 64-bit glibc-devel and libstdc++-devel packages are required. To ensure that you have these packages installed before you install the compiler, follow the instruction in Error: Could not determine location of 32-bit or 64-bit GCC (RHEL3 U3, RHEL4).

    Note:
    You should not use the grep command to check whether these packages are installed because the names of the RPM packages on RHEL3 U3 and RHEL4 are structured so that they have the same name regardless whether they are 32-bit or 64-bit RPM package. As a result, the output does not indicate whether 32-bit, 64-bit or both RPM packages are installed.

    Packages that support specific tasks

    Table 7 lists programs and packages that are not required for installation of the product but are required to support specific tasks.

    Table 7.

    Packages that support specific tasks
    Task Prerequisite RPM package Query
    Required: Configuring the compiler using xlf_configure perl rpm -qf /usr/bin/perl
    Optional: Using the documentation that is packaged with the compiler RPM packages for graphical desktop environments (such as K Desktop Environment or Gnome) that support web browsers and PDF viewers. rpm -q mozilla
    rpm -q kdebase3
    rpm -q xpdf

    Verifying that there is enough space

    XL Fortran V9.1 packages require about 150 MB of hard disk space. This amount includes the optional samples and documentation.

    Note:
    Compiling at higher levels of optimization may require large amounts of temporary disk space.

    Use the following command to determine the amount of space available for the compiler installation in the default installation location:

       df -h /opt
    

    Installation

    This section describes different ways to install the XL Fortran V9.1 compiler:

    After installing the RPM packages, you must configure the compiler by running either new_install or xlf_configure. See Configuring the compiler.

    Table 8 lists the RPM packages and their prerequisites for all supported Linux distributions.


    Table 8.

    XL Fortran V9.1 packages and their prerequisites
    Package name Prerequisites Description Relocation
    xlsmp.msg.rte
    None SMP run-time messages All SMP packages must be installed in the same location.
    xlsmp.rte
    xlsmp.msg.rte
    SMP run-time dynamic libraries
    xlsmp.lib
    xlsmp.msg.rte
    xlsmp.rte
    SMP run-time static libraries
    xlmass.lib
    None IBM Mathematical Acceleration Subsystem (MASS) libraries Any location
    xlf.lic
    None XL Fortran V9.1 license Any location
    xlf.rte
    None Fortran run-time environment All XL Fortran V9.1 run-time-related packages must be installed in the same location.
    xlf.rte.lnk
    xlf.rte
    Fortran run-time links
    xlf.cmp
    xlf.lib
    xlf.lic
    xlf.rte
    xlf.rte.lnk
    xlmass.lib
    xlsmp.lib
    xlsmp.msg.rte
    xlsmp.rte
    Fortran compiler All XL Fortran V9.1 compiler and library packages must be installed in the same location.
    xlf.samples
    None. Example programs Any location (optional).
    xlf.help
    None. Man pages and compiler documentation in HTML and PDF formats Any location (optional).

    Installing all the XL Fortran V9.1 RPM packages with a single command

    If your current working directory contains all of the RPM packages for XL Fortran V9.1 and no other RPM packages, you can use a single command to install all XL Fortran V9.1 RPM packages.

    Note:
    By default, the compiler packages are installed in the /opt/ibmcmp directory.

    To install all packages to the default location, use the following command

       rpm -ivh *.rpm
    

    To install all packages to a single non-default location, use the following command

       rpm -ivh *.rpm --prefix relocation_path
    

    where relocation_path is the location of the product files.

    Installing each XL Fortran V9.1 RPM package individually

    If your current working directory contains RPM packages in addition to the XL Fortran V9.1 RPM packages, you need to install each XL Fortran V9.1 RPM package individually. In order to avoid dependency errors when you install packages individually, you must follow the installation order described in Examples of default installations or Examples of non-default installations.

    Note:
    The commands in this section use the following variables:

    To install a package to the default location, use the following command

       rpm -ivh package_name-V.R.M-F.arch.rpm
    

    To install a package to the non-default location, use the following command

       rpm -ivh package_name-V.R.M-F.arch.rpm --prefix relocation_path
    

    Examples of default installations

    Default installation on RHEL3 U3 or RHEL4

    Issue the following commands to install XL Fortran V9.1 to the default location, /opt/ibmcmp. In order to avoid dependency errors during installation of XL Fortran V9.1 on RHEL3 U3 or RHEL4, issue the following commands in the order given:

      rpm -ivh xlsmp.msg.rte-1.5.1-0.ppc64pseries.rpm
      rpm -ivh xlsmp.rte-1.5.1-0.ppc64pseries.rpm
      rpm -ivh xlsmp.lib-1.5.1-0.ppc64pseries.rpm
      rpm -ivh xlmass.lib-4.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.msg.rte-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.rte-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.rte.lnk-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.lic-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.lib-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.cmp-9.1.1-0.ppc64pseries.rpm
     
    

    The sample programs and product documentation packages have no dependency on other RPM packages and can be installed in any order using the following commands:

      rpm -ivh xlf.help-9.1.1-0.ppc64pseries.rpm
      rpm -ivh xlf.samples-9.1.1-0.ppc64pseries.rpm
    
    Note:
    If you have already installed the XL C/C++ compiler, xlsmp.msg.rte, xlsmp.rte, xlsmp.lib and xlmass.lib will already be installed. The RPM utility will prevent you from installing these components a second time.

    Default installation on SLES9 and Y-HPC

    Issue the following commands to install XL Fortran V9.1 to the default location, /opt/ibmcmp. In order to avoid dependency errors during installation of XL Fortran V9.1 on SLES9or Y-HPC, issue the following commands in the order given:

      rpm -ivh xlsmp.msg.rte-1.5.1-0.ppc64.rpm
      rpm -ivh xlsmp.rte-1.5.1-0.ppc64.rpm
      rpm -ivh xlsmp.lib-1.5.1-0.ppc64.rpm
      rpm -ivh xlmass.lib-4.1.1-0.ppc64.rpm
      rpm -ivh xlf.msg.rte-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.rte-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.rte.lnk-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.lic-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.lib-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.cmp-9.1.1-0.ppc64.rpm
    

    The sample programs and product documentation packages have no dependency on other RPM packages and can be installed in any order using the following commands:

      rpm -ivh xlf.help-9.1.1-0.ppc64.rpm
      rpm -ivh xlf.samples-9.1.1-0.ppc64.rpm
    
    Note:
    If you have already installed the XL C/C++ compiler, xlsmp.msg.rte, xlsmp.rte, xlsmp.lib and xlmass.lib will already be installed. The RPM utility will prevent you from installing these components a second time.

    Examples of non-default installations

    In the examples in this section, there are different directories for each group of packages that must be installed together. Table 8 lists these package groups. The variables that represent each of these directories are:

    Non-default installation on RHEL3 U3 or RHEL4

    Issue the following commands to install XL Fortran V9.1 to a non-default location. In order to avoid dependency errors during installation of XL Fortran V9.1 on RHEL3 U3 or RHEL4, issue the following commands in the order given:

      rpm -ivh xlsmp.msg.rte-1.5.1-0.ppc64pseries.rpm --prefix smprt_path
      rpm -ivh xlsmp.rte-1.5.1-0.ppc64pseries.rpm --prefix smprt_path
      rpm -ivh xlsmp.lib-1.5.1-0.ppc64pseries.rpm --prefix smprt_path
      rpm -ivh xlmass.lib-4.1.1-0.ppc64pseries.rpm --prefix xlmass_path
      rpm -ivh xlf.msg.rte-9.1.1-0.ppc64pseries.rpm --prefix xlfrt_path
      rpm -ivh xlf.rte-9.1.1-0.ppc64pseries.rpm --prefix xlfrt_path
      rpm -ivh xlf.rte.lnk-9.1.1-0.ppc64pseries.rpm --prefix xlfrt_path
      rpm -ivh xlf.lic-9.1.1-0.ppc64pseries.rpm --prefix xlflic_path
      rpm -ivh xlf.lib-9.1.1-0.ppc64pseries.rpm --prefix xlf_path
      rpm -ivh xlf.cmp-9.1.1-0.ppc64pseries.rpm --prefix xlf_path 
    

    The sample programs and product documentation packages have no dependency on other RPM packages and can be installed in any order using the following commands:

      rpm -ivh xlf.help-9.1.1-0.ppc64pseries.rpm --prefix xlfdoc_path
      rpm -ivh xlf.samples-9.1.1-0.ppc64pseries.rpm --prefix xlfsmpls_path 
    

    Non-default installation on SLES9 or Y-HPC

    Issue the following commands to install XL Fortran V9.1 to a non-default location. In order to avoid dependency errors during installation of XL Fortran V9.1 on SLES9 or Y-HPC, issue the following commands in the order given:

      rpm -ivh xlsmp.msg.rte-1.5.1-0.ppc64.rpm --prefix smprt_path
      rpm -ivh xlsmp.rte-1.5.1-0.ppc64.rpm --prefix mprt_path
      rpm -ivh xlsmp.lib-1.5.1-0.ppc64.rpm --prefix smprt_path
      rpm -ivh xlmass.lib-4.1.1-0.ppc64.rpm --prefix xlmass_path
      rpm -ivh xlf.msg.rte-9.1.1-0.ppc64.rpm --prefix xlfrt_path
      rpm -ivh xlf.rte-9.1.1-0.ppc64.rpm --prefix xlfrt_path
      rpm -ivh xlf.rte.lnk-9.1.1-0.ppc64.rpm --prefix xlfrt_path
      rpm -ivh xlf.lic-9.1.1-0.ppc64.rpm --prefix xlflic_path
      rpm -ivh xlf.lib-9.1.1-0.ppc64.rpm --prefix xlf_path
      rpm -ivh xlf.cmp-9.1.1-0.ppc64.rpm --prefix xlf_path
    

    The sample programs and product documentation packages have no dependency on other RPM packages and can be installed in any order.

      rpm -ivh xlf.help-9.1.1-0.ppc64.rpm --prefix xlfdoc_path
      rpm -ivh xlf.samples-9.1.1-0.ppc64.rpm --prefix xlfsmpls_path
    

    Product migration installation on RHEL3 U3

    Product migration installation does not apply to RHEL4, SLES9, or Y-HPC, because V9.1 is the first version of XL Fortran supported on those operating systems.

    Note:
    If you have a previous version of the compiler installed on the system, you must use the xlf_configure utility to configure the compiler. Do not use new_install if you have more than one version of the product installed.

    Version upgrades

    If you have the base version of the compiler installed, it is highly recommended that you uninstall it before you install a new version of the product.

    If you want to have more than one version of the compiler on the system, refer to instructions in Procedures for advanced users.

    PTF updates

    Before applying PTF updates, it is highly recommended that you uninstall any previous compiler packages.

    Notes:

    1. With the PTF (Program Temporary Fix) updates, all packages except xlf.lic are shipped. You must use the xlf.lic you have from your base version.

    2. When applying PTF updates, you can test the PTF update before uninstalling the previous Fix level. In this case, you must install the PTF to a different location. For instructions, see Procedures for advanced users.

    Querying for installed packages

    To query for an individual package, issue a command such as the following:

       rpm -q xlf.cmp
    

    If the installation is not successful, you will get a message indicating that the package has not been installed.

    If the package has been installed properly, the result should be:

       xlf.cmp-V.R.M-F
    

    where V.R.M-F is the Version.Release.Modification-Fix level of the compiler installed on the system.

    To query all compiler packages, issue the following command:

       rpm -qa | grep -e xlf -e xlsmp -e xlmass
    

    If none of the packages are installed, the output of the command will be null.

    Enabling the XL Fortran V9.1 man pages

    Man pages are provided for the compiler invocation commands and other utilities that are supplied with the compiler.

    Before you can read the man pages, you must add the full path to the XL Fortran MANPATH environment variable, as follows:

    1. Open a terminal window.
    2. Depending on the shell you are using, enter either of the following commands:

      The supported locales for manual pages are as follows:

      For example, to view man pages in English, enter either of the following commands:

      
      
    3. Add /opt/ibmcmp/xlf/9.1/man to the beginning of the MANPATH environment variable, as shown in the following table.

      Table 9.

      How to update the MANPATH environment variable
      Shell Command
      bash or ksh export MANPATH=/opt/ibmcmp/xlf/9.1/man:$MANPATH
      csh setenv MANPATH /opt/ibmcmp/xlf/9.1/man:$MANPATH

    To invoke a man page, enter man followed by the command; for example:

    man xlf

    To leave the man page, type: q.

    Setting the correct NLSPATH

    After installation, you must set the NLSPATH environment variable so that the run-time environment finds the appropriate message catalogs.

    Issue the following command:

      export NLSPATH=$NLSPATH:
       smprt_path/msg/%L/%N:
       xlfrt_path/msg/%L/%N:
       xlf_path/xlf/9.1/msg/%L/%N
     
    

    where:

    Note:
    If the default installation location is used, then smprt_path, xlfrt_path, and xlf_path will all be /opt/ibmcmp.

    Configuring the compiler

    If only one version of the compiler is installed on your system, you should use the new_install utility to configure the compiler. The new_install utility automatically backs up any existing configuration file and invokes the xlf_configure utility. In order to run new_install, you must have root or administrator privileges.

    You should invoke the xlf_configure utility directly only when at least one of the following is true:

    For instructions, see Running the xlf_configure utility directly

    Note:
    If you configure the compiler using xlf_configure, your output configuration file, xlf.cfg, can be installed in a location where you have write permission. You would not need root or administrative privileges.

    The following table describes some of the attributes in the generated configuration file.

    Table 10.

    Linux-specific configuration attributes
    Attribute Contents Additional information
    gcc_path
    gcc_path_64
    The location of the GCC executable, in 32-bit mode or 64-bit mode The gcc command must be located in the bin directory under the specified path.
    gcc_libs
    gcc_libs_64
    A comma-separated list of GCC libraries, in 32-bit mode or 64-bit mode The gcc returns this list to the xlf_configure utility.
    gcc_libdirs
    gcc_libdirs_64
    A comma-separated list of directories that contain GCC libraries, in 32-bit mode or 64-bit mode The gcc returns this list to the xlf_configure utility.

    Running the new_install utility

    If no version of the compiler is already installed on your system, you should use the new_install utility to install and configure the compiler.

    The new_install utility:

    When running new_install on RHEL4, Y-HPC, or SLES9, you will be required to accept the license agreement before the configuration file is generated. In order to run the license acceptance tool, you must have installed the Java(TM) Runtime Environment, as specified in Table 7

    Note:
    This step is not required for RHEL3 U3.

    To run the new_install utility:

    1. Change to the directory that contains the new_install and xlf_configure executables:
         cd /opt/ibmcmp/xlf/9.1/bin
      

      or, if you installed XL Fortran V9.1 in a non-default location:

         cd xlf_path/xlf/9.1/bin
      
    2. Run the following command:
        ./new_install
      

      The new_install command executes the following command:

         xlf_configure
         -gcc gcc32path
         -gcc64 gcc64path
         -install
         -mass xlmass_path/xlmass/4.1
         -smprt smprt_path/xlsmp/1.5
         -xlflic xlflic_path/xlf/9.1
         -xlfrt xlfrt_path/xlf/9.1
         -xlf xlf_path/xlf/9.1
         xlf_path/xlf/9.1/etc/xlf.base.cfg
      

    Running the xlf_configure utility directly

    The xlf_configure utility has the following syntax:

                      .-------------------.
                      V                   |
    >>-xlf_configure----+- -gcc--path---+-+--+-----------+---------->
                        '- -gcc64--path-'    +- -o--name-+
                                             '- -install-'
     
    >--+---------+--+----------------------------------------+------>
       '- -force-'  | .------------------------------------. |
                    | V                                    | |
                    +---+- -mass--xlmass_path/xlmass/4.1-+-+-+
                    |   +- -smprt--smprt_path/xlsmp/1.5--+   |
                    |   +- -xlflic--xlflic_path/xlf/9.1--+   |
                    |   +- -xlfrt--xlfrt_path/xlf/9.1----+   |
                    |   '- -xlf--xlf_path/xlf/9.1--------'   |
                    '- -ibmcmp--path-------------------------'
     
    >--+--------------------------+--------------------------------><
       '-template_config_filename-'
     
     
    

    where:

    -gcc path
    Specifies the path where the GCC bin directory is installed. In the configuration file, the gcc_path attribute is set equal to this path.

    For example, if the GCC command is /usr/bin/gcc, you would specify

      -gcc /usr
    

    -gcc64 path
    Specifies the path where the 64-bit GCC bin directory is installed. In the configuration file, the gcc_path_64 attribute is set equal to this path.

    -o name
    Specifies the name of the configuration file to generate. By default, output is written to the display.

    -install
    Generates a default compiler configuration file xlf.cfg and places it in the default location /etc/opt/ibmcmp/xlf/9.1/xlf.cfg.

    -force
    Forces the xlf_configure utility to overwrite any existing output file with the specified name and path. By default, if you do not use force, xlf_configure issues an error message and stops if the specified file already exists.

    -mass xlmass_path/xlmass/4.1
    Specifies the path for the xlmass.lib package. By default the path is /opt/ibmcmp/xlmass/4.1.

    -smprt smprt_path/xlsmp/1.5
    Specifies the path for the xlsmp.msg.rte, xlsmp.rte, and xlsmp.lib packages. By default, this is /opt/ibmcmp/xlsmp/1.5.

    -xlflic xlflic_path/xlf/9.1
    Specifies the path for the xlf.lic package. By default, this is /opt/ibmcmp/xlf/9.1.

    -xlfrt xlfrt_path/xlf/9.1
    Specifies the path for the xlf.msg.rte, xlf.rte and xlf.rte.lnk packages. By default, this is /opt/ibmcmp/xlf/9.1.

    -xlf xlf_path/xlf/9.1
    Specifies the path for the xlf.cmp package. By default, this is /opt/ibmcmp/xlf/9.1.

    -ibmcmp relocation_path
    Alternatively specifies the path where all of the XL Fortran V9.1 packages (xlsmp.msg.rte, xlsmp.rte, xlsmp.lib, xlf.lic, xlf.msg.rte, xlf.rte, xlf.rte.lnk and xlf.cmp) are installed. In this case, relocation_path represents smprt_path, xlflic_path, xlfrt_path, and xlf_path.
    Note:
    If you want to install packages in different subdirectories, you should not use ibmcmp.

    template_config_filename
    The input file that is used to construct the configuration file. By default, this is /opt/ibmcmp/xlf/9.1/etc/xlf.base.cfg. If you relocated the xlf.cmp package to the xlf_path but want to use the default template, specify:

    xlf_path/xlf/9.1/etc/xlf.base.cfg.


    Viewing the documentation

    The following documentation is provided with XL Fortran V9.1:

    README file
    A README file is located in the root directory of the installation CD. This file is installed in the /opt/ibmcmp/xlf/9.1 directory.

    PDF books
    On the installation CD, the PDF versions of the XL Fortran V9.1 documentation are stored in the /doc/language_path/pdf directories. When you install the xlf.help package, the PDF files are installed in the corresponding directory on the system. For example, if you install the xlf.help package to the default location:
    Note:
    You need a PDF viewer to view these files. The xpdf viewer is included in each supported Linux distribution.

    HTML files
    On the installation CD, the HTML version of the XL Fortran V9.1 documentation is stored in the /doc/language_path/html directories. When you install the xlf.help package, the HTML files are installed to the corresponding directory on the system. For example, if you install the xlf.help package to the default location:
    Note:
    To view the HTML files, open the file index.htm in a web browser such as Mozilla or Konqueror.

    Man pages
    Man pages are provided for the compiler invocation commands (such as xlf) and the following additional commands: xlf_configure, new_install, showpdf, mergepdf, resetpdf, and cleanpdf. For example, if you install the xlf.help package to the default location:

    Setting up the short compiler invocation command

    If you want to be able to invoke the compiler without having to specify the full path, you must do either of the following:

    Creating a symbolic link for a compiler in the /usr/bin subdirectory

    To create a symbolic link for one of the XL Fortran V9.1 compiler invocations (for example xlf) that is installed in the xlf_path, use the following command:

    ln -s xlf_path/xlf/9.1/bin/xlf /usr/bin/xlf
    

    Example: if the compiler is in the default location, use the following command:

    ln -s /opt/ibmcmp/xlf/9.1/bin/xlf /usr/bin/xlf
    

    Modifying the PATH environment variable

    To modify the PATH environment variable for XL Fortran V9.1, add the target path (xlf_path/xlf/9.1/bin/xlf/9.1/bin) to the PATH environment variable:

    Example: If the compiler is in the default location, use the following command to modify the PATH environment variable

    export PATH=$PATH:/opt/ibmcmp/xlf/9.1/bin
    

    Testing the installation

    To test the product install and the critical search paths, try building the following simple application.

    1. Create the following Fortran program and name the source file hello.f:
            PRINT *, "Hello World!"
            END
      
      Note:
      Each line must have six blank spaces before the first text character.
    2. Compile the program by entering the command:
        xlf  hello.f -o hello
      
    3. Run the program:
        ./hello
      

      The expected result is that "Hello World!" is displayed on the screen.

    4. Check the exit code of the program:
        echo $?
      

      The result should be 0.


    Uninstalling XL Fortran

    Notes:

    1. You must have root user access to uninstall this product.

    2. Whenever you uninstall a package, specify the V.R.M-F (Version.Release.Modification-Fix level) of the package.

    3. Always uninstall packages in the reverse of that in which they were installed (that is, LIFO).

    4. You cannot uninstall packages that are required by other packages. For example, the SMP runtime (xlsmp.rte) is a shared component if IBM XL C/C++ compiler is also installed on the same system.

    5. The package removal commands will not remove any configuration files that were generated by new_install or xlf_configure.

    Uninstall the compiler packages in the following order to avoid dependency errors during uninstallation:

      rpm -e xlf.cmp-9.1.1-0
      rpm -e xlf.lib-9.1.1-0
      rpm -e xlf.lic-9.1.1-0
      rpm -e xlf.rte.lnk-9.1.1-0
      rpm -e xlf.rte-9.1.1-0
      rpm -e xlf.msg.rte-9.1.1-0
      rpm -e xlmass.lib-4.1.1-0
      rpm -e xlsmp.lib-1.5.1-0
      rpm -e xlsmp.rte-1.5.1-0
      rpm -e xlsmp.msg.rte-1.5.1-0
     
    

    The sample programs and product documentation do not have any package dependencies. To uninstall them, you can issue the following commands in any order.

      rpm -e xlf.samples-9.1.1-0
      rpm -e xlf.help-9.1.1-0
    

    Procedures for advanced users

    If you have a previous version of the compiler installed, it is highly recommended that you uninstall it before you install a new version of the product. These procedures are for users who are


    Installing multiple compiler versions on the same RHEL3 U3 system

    Note:
    You need a separate license for each user.

    You might want to install multiple versions of the compiler on a system to satisfy the requirements of the following scenarios:

    Using the latest run-time environment with multiple Fortran compiler versions (RHEL3 U3 only)

    If you want to have both XL Fortran V8.1 and XL Fortran V9.1 installed on the same system and you would like both to use the more current XL Fortran V9.1 run-time environment, you will must ensure that the newer XL Fortran V9.1 run-time-related packages overwrite the existing XL Fortran V8.1 run-time-related packages.

    Note:
    To avoid dependency errors while installing the newer XL Fortran V9.1 run-time environment and compiler, use the steps in Example: Steps to overwrite the existing run-time environment.

    The following table lists the run-time-related packages for both Visual Age Fortran V8.1 and XL Fortran V9.1.


    Table 11.

    Run-time-related packages
    XL Fortran V8.1 run-time-related packages XL Fortran 9.1 run-time-related packages
    xlsmp.msg.rte-1.3.M-F xlsmp.msg.rte-1.5.M-F
    xlsmp.rte-1.3.M-F xlsmp.rte-1.5.M-F
    xlsmp.lib-1.3.M-F xlsmp.lib-1.5.M-F
    xlf.msg.rte 8.1.m-f xlf.msg.rte 9.1.m-f
    xlf.rte 8.1.m-f xlf.rte 9.1.m-f
    xlf.rte.lnk 9.1.m-f

    Note:
    These package names contain the following variables:

    Example: Steps to overwrite the existing run-time environment

    This example uses the following scenario:

    Note:
    The --prefix path option for the packages that are not related to XL Fortran V9.1 can be omitted if you also install them to the default location.

    For this scenario, use the following steps:

    1. In order to avoid future dependency errors, uninstall the existing run-time-related packages by issuing the following commands:

      rpm -e xlsmp.msg.rte-1.3.7-2 --nodeps

      rpm -e xlf.msg.rte-8.1.1-1 --nodeps

    2. In order to replace the existing run-time-related packages, install the XL Fortran V9.1 compiler by issuing the following commands:

      rpm -ivh xlsmp.msg.rte-1.5.1-0.ppc64pseries.rpm

      rpm -ivh xlsmp.rte-1.5.1-0.ppc64pseries.rpm --force

      rpm -ivh xlsmp.lib-1.5.1-0.ppc64pseries.rpm

      rpm -ivt xlmass.lib-4.1.1-0.ppc64pseries.rpm --prefix xlmass_path

      rpm -ivh xlf.lic-9.1.1-0.ppc64pseries.rpm --prefix xlflic_path

      rpm -ivh xlf.lib-9.1.1-0.ppc64pseries.rpm --prefix xlf_path

      rpm -ivh xlf.cmp-9.1.1-0.ppc64pseries.rpm --prefix xlf_path

      rpm -ivh xlf.msg.rte-9.1.1-0.ppc64pseries.rpm --prefix xlf_path

      rpm -ivh xlf.rte-9.1.1-0.ppc64pseries.rpm --force

      rpm -ivh xlf.rte.lnk-9.1.1-0.ppc64pseries.rpm

      rpm -ivh xlf.help-9.1.1-0.ppc64pseries.rpm --prefix xlf_path

      rpm -ivh xlf.samples-9.1.1-0.ppc64pseries.rpm --prefix xlf_path

    3. Invoke the xlf_configure utility as follows:

      xlf_path/xlf/9.1/bin/xlf_configure

      -gcc /usr

      -gcc64 /usr

      -mass xlmass_path/xlmass/4.1

      -smprt /opt/ibmcmp/xlsmp/1.5

      -xlf xlf_path/xlf/9.1

      -xlfrt /opt/ibmcmp/xlf/9.1

      -xlflic xlflic_path/xlf/9.1

      xlf_path/xlf/9.1/etc/xlf.base.cfg

      -o /etc/opt/ibmcmp/xlf/9.1/xlf.cfg


    Trying out a PTF update to the compiler

    When applying PTF updates, you can test the PTF update before uninstalling the previous Fix level. You must install the PTF to a different location (follow the instructions in Installation). In this case, there will be no need to reinstall xlf.lic.

    Later, when you have verified that you want the PTF and are ready to uninstall the previous version, you can follow the instructions in Uninstalling XL Fortran.

    Notes:

    1. Do not uninstall xlf.lic. If you try to uninstall this package, you will receive an error message because this package is a prerequisite for other packages that are installed on your system.

    2. Do not use the new_install utility if you do not uninstall the previous version of the compiler. You must use xlf_configure utility.

    3. If you do not uninstall the base version of the compiler from the system, and attempt to apply the PTF in the same location, the installation fails. The RPM utility prevents you from overwriting the existing packages because the location of the files are the same.

    Troubleshooting the configuration

    This chapter describes possible problems you may encounter when you configure XL Fortran V9.1.


    Error: Could not determine location of 32-bit or 64-bit GCC (RHEL3 U3, RHEL4)

    Scenario
    You are running either the new_install or the xlf_configure utility to configure the compiler on a computer running RHEL3 U3 or RHEL4, when you get at least one of the following error messages:

    Error messages


    ERROR: Could not determine location of 32-bit GCC. Suggestion: Ensure 32-bit "glibc-devel", 32-bit
    "libstdc++-devel" are installed.  These packages can be obtained from your operating system install media.
     
    
    ERROR: Could not determine location of 64-bit GCC.  Suggestion: Ensure 64-bit "glibc-devel", 64-bit 
    "libstdc++-devel" are installed.  These packages can be obtained from your operating system install media.
     
    
    ERROR: Please ensure all relevant 32 and 64-bit GCC packages are installed before running "new_install"
    again. If they are installed but cannot be detected by "new_install", please run "xlf_configure" manually.
    

    Explanation
    Either or both of the following packages are not installed in the appropriate directory:
    Note:
    On RHEL3 U3 or RHEL4, you cannot tell whether the 32-bit or the 64-bit version of GCC is installed by querying the packages because both the 32-bit and 64-bit packages have exactly the same RPM name.

    Action
    Verify that both of the 32-bit and 64-bit RPM packages of glibc-devel and libstdc++-devel are installed on the system by compiling test cases in both 32-bit and 64-bit modes. If the test programs compile successfully without any error message, it indicates that you have the RPM package installed. If you get an error message, it means that you need to install the package.

    Example
    This example uses instances of the classic "Hello World" test case.
    1. To test for 32-bit mode version of GCC, run the following commands:
         gcc helloWorld.c 
         g++ helloWorld.cpp
      
    2. To test for 64-bit mode version of GCC:
         gcc -m64 helloWorld.c 
         g++ -m64 helloWorld.cpp
      
    3. If the programs cannot be compiled successfully, it means that you need to install the necessary packages and configure the compiler again:
      1. If you get an error message from 32-bit mode testing, install the required packages, using the following commands:
           rpm -ivh glibc-devel-V.R.M-F.ppc.rpm
           rpm -ivh libstdc++-devel-V.R.M-F.ppc.rpm
        

        where V.R.M-F is the Version.Release.Modification-Fix level of the package.

        Note:
        The 32-bit glibc-devel and libstdc++-devel packages are available from the installation media provided with the operating system. The RPM filename indicates whether the package is for 32-bit mode or 64-bit mode. The 32-bit mode RPM filenames are *.ppc.rpm.
      2. If you get an error message from 64-bit mode testing, install the required packages, using the following commands:
           rpm -ivh glibc-devel-V.R.M-F.ppc64.rpm
           rpm -ivh libstdc++-devel-V.R.M-F.ppc64.rpm
        

        where V.R.M-F is the Version.Release.Modification-Fix level of the package.

        Note:
        The 64-bit glibc-devel and libstdc++-devel packages are available from the installation media provided with the operating system. The RPM filename indicates whether the package is for 32-bit mode or 64-bit mode. The 64-bit mode RPM filenames are *.ppc64.rpm.
      3. Run new_install or xlf_configure again.

    Error: Could not run the license acceptance tool (RHEL4,  SLES9, Y-HPC)

    Scenario
    You are attempting to run the new_install utility on a computer running any supported Linux distribution other than RHEL3 U3 when you get the following error message.

    Error message


    ERROR: Could not run the license acceptance tool.  Please ensure you have installed either libgcj, or 
    both java2 and java2-jre RPM(s) from your operating system installation media.
    

    Explanation
    Java Runtime Environment is required to run the new_install utility.

    Action
    Verify that the Java Runtime Environment is installed. For instructions, refer to Verifying that the required packages are on the system. Then run new_install again.

    Problem: There is not enough debugging information

    Scenario
    You are experiencing unexpected results when running new_install or xlf_configure and you need more information than the system is providing.

    Action

    Use one of the following options to get a more verbose output:

    IBM Copyright 2005