Skip navigation links
(Wind-US Documentation Home Page) (Wind-US User's Guide) (GMAN User's Guide) (MADCAP User's Guide) (CFPOST User's Guide) (Wind-US Utilities) (Common File User's Guide) (Wind-US Installation Guide) (Wind-US Developer's Reference) (Guidelines Documents) (Support)

(Overview) (Obtaining Wind-US and the Tools) (Installing the Application Distributions) (Installing the Build Distributions) (Porting Wind-US to a New UNIX Platform)

Installing the Build Distributions

If pre-compiled executables for Wind-US and/or the tools are not available for the platform you'll be running on, you'll need to install the build distribution. This section describes the procedure for UNIX systems.

Building Wind-US

Makefiles are distributed with the Wind-US build distribution for a variety of platform, operating system, and CPU combinations, including:

If you need to build the code for a platform not listed above, you'll need to first create the appropriate makefiles, using the existing ones as a starting point. See the section Porting Wind-US to a New UNIX Platform for further information.

Assuming the appropriate makefiles exist, after downloading the gzip'ed tar files, the recommended procedure is described below. Note that steps 4 through 6 can be avoided by installing a Wind-US application distribution (even if it doesn't include the pre-compiled executable). The Wind-US build distribution is a complete package, however, and, using the following procedure, a working system can be constructed from it alone.

  1. Put the gzip'ed tar file containing the Wind-US build distribution into an appropriate directory.

  2. In that directory, unpack the file by doing:
       gunzip -c filename | tar xvf -
    where filename is the file name, including the .tar.gz extension. This creates a directory named wind-dev containing the Wind-US source code.

  3. Check to see if the CFDROOT, SYSTEM, and SYSTEM_CPU environment variables have been set to appropriate values, by doing
       printenv CFDROOT
       printenv SYSTEM
       printenv SYSTEM_CPU
    If all three are correctly set, skip ahead to step 7.

  4. If you're using the csh or tcsh shell, edit the file dir_name/wind-dev/bin/cfd.login, where dir_name is the name of the directory used in step 1, to modify the definition of CFDROOT as follows:
       if (! "$?CFDROOT") then
       #=BEGROOT=
         setenv CFDROOT "path_name/wind-dev"
       #=ENDROOT=
       endif
    where path_name is the full path name (starting with a "/") of the directory used in step 1.

    Similarly, bash, ksh, or sh users would edit the file dir_name/wind-dev/bin/cfd.profile to modify the definition of CFDROOT to:

       if [ ! "$CFDROOT" ] ; then
       #=BEGROOT=
         CFDROOT="path_name/wind-dev" 
       #=ENDROOT=
         export CFDROOT
       fi
  5. Next, csh and tcsh users must edit the .login file in their home directory and add the following line:
       source path_name/wind-dev/bin/cfd.login
    where again path_name is the full path name of the directory used in step 1. Similarly, bash, ksh, and sh users must edit their .profile file and add the following line:
       . path_name/wind-dev/bin/cfd.profile
    This causes the contents of the cfd.login (or cfd.profile) file to be executed automatically at login time to set up the environment variables CFDROOT, SYSTEM, and SYSTEM_CPU, that are required for installing and running Wind-US, and to modify your PATH to include the location of the Wind-US executable.

  6. At this point, log out and log back in to execute your .login or .profile file (depending on your login shell). Alternatively, in your home directory execute (for csh and tcsh users)
       source .login
    or (for sh and ksh users)
       . .profile
    Either way, return to step 3.

  7. Define the environment variable WIND_DEV as the location of the directory containing the top-level Makefile. If in step 1 the Wind-US build distribution was unpacked in the directory /usr/local/wind, for example, csh and tcsh users would do
       setenv WIND_DEV /usr/local/wind/wind-dev
  8. cd into the wind-dev directory
       cd wind-dev
  9. The default values in the configuration files should be sufficient to produce an executable on most well-configured systems (assuming that compilers are installed). The primary exception to this is Linux, which does not have a "default" Fortran 90/95 compiler. Another potential problem is the location of the MPI libraries, which needs to be specified if you wish to use MPI for parallel runs. To be safe, review the contents of the following files or parts of files, where SYSTEM and SYSTEM_CPU correspond to the SYSTEM and SYSTEM_CPU environment variables, paying special attention to the items noted below.


  10. From the wind-dev directory, run make to create all the required libraries and executables for running Wind-US. To capture the output from make in the file make.log for later examination if something goes wrong, in addition to displaying it at the terminal, csh and tcsh users should do
       make opt |& tee make.log
    and sh and ksh users should do
       make opt 2>&1 | tee make.log
  11. If you have a previous installation of Wind-US that you wish to update (i.e., CFDROOT points to some other directory than the one you are building from), you will need to install the Wind-US amd PVM executables. To do that, issue the commands
       make install
       make install_scripts
       make copy_pvm
    The first two commands copy the Wind-US executable to $CFDROOT/SYSTEM/CPU/bin and the scripts to $CFDROOT/bin. The third copies the PVM executables and libraries to $CFDROOT/pvm/SYSTEM/CPU, some PVM include files to $CFDROOT/pvm/include, and PVM scripts to $CFDROOT/pvm/lib. The parameters SYSTEM and CPU correspond to the SYSTEM and SYSTEM_CPU environment variables, respectively.

  12. If this is a new installation, it would probably be best to log out and log back in before running Wind-US. This executes the shell start-up scripts, modifying the PATH environment variable to include the newly-created location for the Wind-US executable.

Building the Tools

Makefiles are distributed with the tools build distributions for many of the same platforms supported by the Wind-US build distribution. Unlike the Wind-US build distribution, in order to obtain the source for all the tools several downloads are required. The smaller tools are all bundled together and may be acquired from the "Downloads" page of the "Tools Makefiles" project. GMAN, CFPOST, and MADCAP are normally downloaded separately from their respective "Downloads" pages. Note that the Project Names for these are "gmanpre", "cfpost_pre", and "Madcap production", respectively.

Each build distribution is designed to be a completely independent package, so that the tools can be built without requiring any additional files from IVMS. [There are some exceptions to this, such as CFPOST, described below in step 10.] Thus, one could have separate directory trees for the Wind-US build distribution and each of the tools build distributions. This would lead to a great deal of duplication, however. Therefore, the build distributions are designed to overlay one another. The following instructions assume that all the tools are being built in the same tree.

  1. Place all the source packages in the same directory. If you have already built Wind-US, the directory above wind-dev is the best place, in order to minimize duplication.

  2. Unpack the archives for the tools you wish to compile by doing:
       gunzip -c filename | tar xvf -
    This places the source for the tools in directories under wind-dev/tools-dev.

  3. Verify that the CFDROOT, SYSTEM, and SYSTEM_CPU environment variables, are correctly defined, as described in steps 3-6 in the procedure for building Wind-US.

  4. Check to see if the TOOLSROOT environment variable is properly set, by doing:
       printenv TOOLSROOT
    If it is, skip ahead to step 8.

  5. If you're using the csh or tcsh shell, edit the file dir_name/wind-dev/tools-dev/bin/tools.login, where dir_name is the name of the directory used in step 1, to modify the definition of TOOLSROOT as follows:
       if (! "$?TOOLSROOT") then
       #=BEGROOT=
         setenv TOOLSROOT "path_name/wind-dev/tools-dev"
       #=ENDROOT=
       endif
    where path_name is the full path name (starting with a "/") of the directory used in step 1.

    Similarly, bash, ksh, or sh users would edit the file dir_name/wind-dev/tools-dev/bin/tools.profile to modify the definition of TOOLSROOT to:

       if [ ! "$TOOLSROOT" ] ; then
       #=BEGROOT=
         TOOLSROOT="path_name/wind-dev/tools-dev" 
       #=ENDROOT=
         export TOOLSROOT
       fi
  6. Next, csh and tcsh users must edit the .login file in their home directory and add the following line:
       source path_name/wind-dev/tools-dev/bin/tools.login
    where again path_name is the full path name of the directory used in step 1. Similarly, bash, ksh, and sh users must edit their .profile file and add the following line:
       . path_name/wind-dev/tools-dev/bin/tools.profile
    This causes the contents of the tools.login (or tools.profile) file to be executed automatically at login time to set up the environment variable TOOLSROOT, and to modify your PATH to include the location of the tools executables.

  7. At this point, log out and log back in to execute your .login or .profile file (depending on your login shell). Alternatively, in your home directory execute (for csh and tcsh users)
       source .login
    or (for sh and ksh users)
       . .profile
    Either way, return to step 4.

  8. Define the environment variable WIND_DEV as the location of the directory containing the top-level Makefile. If in step 1 the tools build distributions were unpacked in the directory /usr/local/wind, for example, csh and tcsh users would do
       setenv WIND_DEV /usr/local/wind/wind-dev
  9. Most systems other than Linux should be able to use the default values in the configuration files without problem. On Linux systems, it is likely that the definitions related to the Fortran and C compilers will have to be changed. To be safe, check the following files to be sure they contain information that is appropriate for your system. (See the notes for step 9 in the procedure for building Wind-US).


  10. In the wind-dev directory, run make to create all the required libraries and executables for all the tools for which you have installed source. To capture the output from make in the file make_tools.log for later examination if something goes wrong, in addition to displaying it at the terminal, csh and tcsh users should do
       make all_tools |& tee make_tools.log
    and sh and ksh users should do
       make all_tools 2>&1 | tee make_tools.log
    You can also compile tools individually, by doing
       make tool_name
    where tool_name is the name of the tool. Note that the names to be used for GMAN, CFPOST, and MADCAP are gmanpre, cfpost_pre, and madcapprod, respectively.

    If CFPOST is being built individually, the MADCAP library must be present, either as source code or as a previously-compiled object library. This can be satisfied in a couple of different ways.


  11. If you have a previous installation of the tools that you wish to update (i.e., TOOLSROOT points to some other directory than the one you are building from), you will need to install the tools executables by doing
       make install_tools
    This copies the tools executables to $TOOLSROOT/SYSTEM/CPU/bin, where SYSTEM and CPU correspond to the SYSTEM and SYSTEM_CPU environment variables, as described in step 11 in the procedure for building Wind-US.

  12. If this is a new installation, it would probably be best to log out and log back in again before running any of the tools. This executes the shell start-up scripts, modifying the PATH environment variable to include the newly-created location for the tools executables.

Note that the build procedure for the tools is somewhat less mature than the Wind-US build process.


Last updated 11 Dec 2008