[cig-commits] r18296 - short/3D/PyLith/trunk/doc/userguide/install

brad at geodynamics.org brad at geodynamics.org
Tue Apr 26 12:02:48 PDT 2011


Author: brad
Date: 2011-04-26 12:02:48 -0700 (Tue, 26 Apr 2011)
New Revision: 18296

Modified:
   short/3D/PyLith/trunk/doc/userguide/install/install.lyx
Log:
Updated installation instructions to use PyLith Installer.

Modified: short/3D/PyLith/trunk/doc/userguide/install/install.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/install/install.lyx	2011-04-26 18:45:05 UTC (rev 18295)
+++ short/3D/PyLith/trunk/doc/userguide/install/install.lyx	2011-04-26 19:02:48 UTC (rev 18296)
@@ -1,4 +1,4 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
+#LyX 1.6.7 created this file. For more info see http://www.lyx.org/
 \lyxformat 345
 \begin_document
 \begin_header
@@ -76,6 +76,8 @@
  Installation of PyLith on other operating systems -- or installation on
  a cluster -- requires building the software from the source code, which
  can be difficult for inexperienced users.
+ We have created a small utility called PyLith Installer that makes installing
+ PyLith and all of its dependencies from source much easier.
  Help is available from both a CIG mailing list and CIG Roundup Bug Tracking
  System 
 \begin_inset Flex URL
@@ -378,2747 +380,43 @@
  are not used across all of the packages on which PyLith depends.
  This is usually not an issue with Linux distributions, such as Fedora,
  Ubuntu, and Debian that have good quality control; it can be an issue with
- Darwin package managers, such as Fink, where there is limited enforcement
- of consistency across packages.
+ Darwin package managers, such as Fink and MacPorts, where there is limited
+ enforcement of consistency across packages.
  Nevertheless, PyLith can be built on most systems provided the instructions
  are followed carefully.
  PyLith is developed and tested on Linux and Mac OS X.
 \end_layout
 
 \begin_layout Standard
-Detailed installation instructions for building PyLith using the SVN source
- repository are available for several  platforms.
- The instructions can be accessed via the web interface into the PyLith
- source repository 
+A small utility, PyLith Installer, removes most of the obstacles in building
+ PyLith and its dependencies from source.
+ For each package this utility downloads the source code, configures it,
+ builds it, and installs it.
+ This insures that the versions of the dependencies are consistent with
+ PyLith and that the proper configure arguments are used.
+ The minimum requirements for using the PyLith installer are a C compiler,
+ tar, and wget or curl.
+ Detailed instructions for how to install PyLith using the installer are
+ included in the installer distribution, which is available from the PyLith
+ web page 
 \begin_inset Flex URL
 status collapsed
 
 \begin_layout Plain Layout
 
-geodynamics.org/wsvn/cig/short/3D/PyLith/trunk/doc/install/
-\end_layout
-
-\end_inset
-
-.
- Even though using the software repositories is recommended only for experienced
- users, less experienced users will find the platform-specific instructions
- useful.
- For example, the platform-specific instructions include a list of binary
- packages/distributions that can be used, eliminating the need to compile
- those packages from source.
- Thus, less experienced users should follow the platform-specific instructions,
- but replace checking out the source code from the repository (applies to
- PETSc and CIG code only) with downloading the prepackaged source code.
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:System-Requirements"
-
-\end_inset
-
-System Requirements
-\end_layout
-
-\begin_layout Standard
-Installation of PyLith requires the following development tools:
-\end_layout
-
-\begin_layout Itemize
-A C++ compiler
-\end_layout
-
-\begin_layout Itemize
-A C compiler
-\end_layout
-
-\begin_layout Itemize
-A FORTRAN compiler (optional)
-\end_layout
-
-\begin_layout Itemize
-Python 2.3 or greater (Python 2.4 or greater is required on 64-bit machines)
-\end_layout
-
-\begin_layout Subsubsection
-C and C++ Compilers
-\end_layout
-
-\begin_layout Standard
-A C++ compiler is required for building PETSc's Sieve component, spatialdata,
- and PyLith itself.
- A C compiler is required for several of PyLith's dependencies.
-\end_layout
-
-\begin_layout Standard
-On Unix systems, there is a high likelihood that usable C and C++ compilers
- are already installed.
- Check with your system administrator if you are unsure of the name of your
- C and C++ compiler commands.
- On Linux, the standard C and C++ compilers are 
-\family typewriter
-gcc
-\family default
- and 
-\family typewriter
-g++
-\family default
-, respectively.
- If either the 
-\family typewriter
-gcc
-\family default
- or 
-\family typewriter
-g++
-\family default
- commands are not available, install the corresponding GCC packages using
- the package manager for your distribution.
- The Mac OS X version of GCC is included in a software development suite
- called Xcode.
- Xcode is available as a free download at the Apple Developer Connection
- 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-developer.apple.com
-\end_layout
-
-\end_inset
-
-.
- (Note that Xcode does not include a FORTRAN compiler.)
-\end_layout
-
-\begin_layout Subsubsection
-FORTRAN Compiler (optional)
-\end_layout
-
-\begin_layout Standard
-To build PETSc, you need either a FORTRAN-77 or FORTRAN-9x compiler.
- There are several free FORTRAN compilers available.
- GCC 4 contains a FORTRAN-95 compiler called 
-\family typewriter
-gfortran
-\family default
-.
- Earlier versions of GCC include 
-\family typewriter
-g77
-\family default
-.
- Another free alternative is 
-\family typewriter
-g95
-\family default
-.
- Both the 
-\family typewriter
-gfortran
-\family default
- and 
-\family typewriter
-g95
-\family default
- projects offer pre-built binaries for a variety of systems, including Mac
- OS X.
- A number of optional PETSc packages that provide additional preconditioners
- and solvers require a FORTRAN compiler.
-\end_layout
-
-\begin_layout Subsubsection
-Python
-\end_layout
-
-\begin_layout Standard
-PyLith's high-level user interface code is written in Python, utilizing
- the Pyre framework.
- Pyre is included in the Python package known as Pythia.
- PyLith requires Pythia v0.8.1.6 or later, but you need not install Pythia
- because PyLith's 
-\family typewriter
-configure
-\family default
- script automatically downloads Pythia directly from CIG.
-\end_layout
-
-\begin_layout Standard
-Pythia (and therefore PyLith) requires Python 2.3 or later.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-\color red
-Warning:
-\series default
-\color none
- On 64-bit machines, Python 2.4 or later is required.
- Python 2.3 contains a bug which prevents installation on 64-bit hardware.
-\end_layout
-
-\begin_layout Standard
-Your system may already have a suitable Python interpreter installed.
- To check, type the `
-\family typewriter
-python
-\family default
-' command:
-\end_layout
-
-\begin_layout LyX-Code
-$ python -V
-\end_layout
-
-\begin_layout LyX-Code
-Python 2.3.4
-\end_layout
-
-\begin_layout Standard
-Mac OS X 10.3 and later ships with a suitable version of Python preinstalled.
- If you're using an older version of Mac OS X, or for more information in
- general, see Python on the Mac 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.python.org/download/mac
-\end_layout
-
-\end_inset
-
- at the Python web site.
-\end_layout
-
-\begin_layout Standard
-On Linux, simply install the binary system package available for your distributi
-on.
- Be sure to select the Python development package (typically called 
-\family typewriter
-python-dev
-\family default
-) in addition to the core Python package -- even if you don't plan on doing
- any Python software development.
- The development package contains the Python 
-\family typewriter
-include
-\family default
- files, which are necessary for building PyLith.
-\end_layout
-
-\begin_layout Standard
-If you are working on a cluster and 
-\family typewriter
-python
-\family default
- is too old, try poking around a little.
- Sometimes multiple versions of Python are installed on the same system:
-\end_layout
-
-\begin_layout LyX-Code
-$ python -V
-\end_layout
-
-\begin_layout LyX-Code
-Python 2.2.3
-\end_layout
-
-\begin_layout LyX-Code
-$ which python
-\end_layout
-
-\begin_layout LyX-Code
-/usr/bin/python
-\end_layout
-
-\begin_layout LyX-Code
-$ ls /usr/bin/python*
-\end_layout
-
-\begin_layout LyX-Code
-/usr/bin/python /usr/bin/python2 /usr/bin/python2.2
-\end_layout
-
-\begin_layout LyX-Code
-/usr/bin/python24 /usr/bin/python2.4
-\end_layout
-
-\begin_layout LyX-Code
-$
-\end_layout
-
-\begin_layout Standard
-In the above scenario, it is useful to create an alias to the newer Python:
-\end_layout
-
-\begin_layout LyX-Code
-$ cd ~/bin
-\end_layout
-
-\begin_layout LyX-Code
-$ ln -s /usr/bin/python2.4 python
-\end_layout
-
-\begin_layout LyX-Code
-$ cd
-\end_layout
-
-\begin_layout LyX-Code
-$ hash -r
-\end_layout
-
-\begin_layout LyX-Code
-$ which python
-\end_layout
-
-\begin_layout LyX-Code
-~/bin/python
-\end_layout
-
-\begin_layout LyX-Code
-$ python -V
-\end_layout
-
-\begin_layout LyX-Code
-Python 2.4.1
-\end_layout
-
-\begin_layout LyX-Code
-$
-\end_layout
-
-\begin_layout Standard
-If absolutely necessary, one can easily build Python from source using a
- C compiler.
- You can download Python from the Python website 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.python.org
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsection
-Dependencies
-\end_layout
-
-\begin_layout Standard
-PyLith has the following dependencies:
-\end_layout
-
-\begin_layout Itemize
-PETSc (development version)
-\end_layout
-
-\begin_layout Itemize
-spatialdata
-\end_layout
-
-\begin_layout Itemize
-nemesis (v1.0)
-\end_layout
-
-\begin_layout Itemize
-FIAT (v0.3)
-\end_layout
-
-\begin_layout Itemize
-numpy (v1.0)
-\end_layout
-
-\begin_layout Itemize
-proj (v4.5)
-\end_layout
-
-\begin_layout Itemize
-Pythia* (v0.8.1.6 or later)
-\end_layout
-
-\begin_layout Itemize
-an MPI library*
-\end_layout
-
-\begin_layout Itemize
-BLAS/LAPACK*
-\end_layout
-
-\begin_layout Itemize
-Boost*
-\end_layout
-
-\begin_layout Itemize
-Chaco*
-\end_layout
-
-\begin_layout Standard
-Dependencies marked with an asterisk (*) can be downloaded and  installed
- automatically.
- The source code for Nemesis, spatialdata, and PyLith package can all be
- downloaded from the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
 geodynamics.org/cig/software/packages/short/pylith/
 \end_layout
 
 \end_inset
 
 .
- Whereas the SWIG generated Python and C++ sources files are included in
- the source distribution, they are not in the PyLith repository, so building
- from the source repository also requires SWIG.
- PyLith also has the following optional dependencies:
 \end_layout
 
-\begin_layout Itemize
-netcdf (v3.6)
+\begin_layout Section
+Configuration on a Cluster
 \end_layout
 
-\begin_layout Itemize
-cppunit (v1.12)
-\end_layout
-
 \begin_layout Standard
-After successfully building and installing PyLith from source, you will
- need to configure Pyre to launch parallel runs of PyLith (see Section 
-\begin_inset CommandInset ref
-LatexCommand vref
-reference "sec:Pyre-Configuration"
-
-\end_inset
-
-).
- Downloading the latest PyLith and PETSc source code directly from the source
- code repositories, instead of using the source packages (see Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Software-Repository"
-
-\end_inset
-
- later in this chapter) requires additional tools (see Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sub:Additional-Tools"
-
-\end_inset
-
-).
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Installing-PETSc"
-
-\end_inset
-
-Installing PETSc
-\end_layout
-
-\begin_layout Standard
-PyLith requires PETSc -- including PETSc's new Sieve component.
- Sieve is still under development; therefore, PyLith requires the development
- version of PETSc.
-\end_layout
-
-\begin_layout Standard
-PETSc itself depends upon several other software packages.
- Fortunately, PETSc's configuration script can automatically download and
- build these software packages for you.
-\end_layout
-
-\begin_layout Standard
-For general information about the development version of PETSc, visit the
- PETSc Developers Site 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www-unix.mcs.anl.gov/petsc/petsc-as/developers
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-To install PETSc, you will download and unpack the 
-\family typewriter
-petsc-dev
-\family default
- tarball, run a Python configure script (
-\family typewriter
-config/configure.py
-\family default
-), set a pair of environment variables, and finally build PETSc from source
- by running 
-\family typewriter
-make
-\family default
-.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-TIP:
-\series default
- If you run into problems configuring or building PETSc, send 
-\emph on
-both
-\emph default
- 
-\family typewriter
-\shape italic
-$PETSC_ARCH
-\shape default
-/conf/configure.log
-\family default
- and 
-\family typewriter
-\shape italic
-$PETSC_ARCH
-\shape default
-/conf/make.log 
-\family default
-to PETSc Maintenance Mailing List 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-petsc-maint at mcs.anl.gov
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-For detailed information on installing PETSc, see the PETSc Installation
- Docs 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www-unix.mcs.anl.gov/petsc/petsc-as/documentation/installation.html
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking 
-\family typewriter
-petsc-dev
-\end_layout
-
-\begin_layout Standard
-The development version of PETSc is called 
-\family typewriter
-petsc-dev
-\family default
-.
- Download the tarball snapshot of 
-\family typewriter
-petsc-dev
-\family default
- for PyLith from PyLith PETSc tarball at
-\end_layout
-
-\begin_layout LyX-Code
-
-\size small
-http://geodynamics.org/cig/software/packages/short/pylith/petsc-dev-pylith-1.5.0.tgz
-\end_layout
-
-\begin_layout Standard
-Unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf petsc-dev-pylith-1.5.0.tgz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c petsc-dev-pylith-1.5.0.tgz | tar xf -
-\end_layout
-
-\begin_layout Standard
-After unpacking, a directory called 
-\family typewriter
-petsc-dev
-\family default
- will be visible in your working directory.
-\end_layout
-
-\begin_layout Subsubsection
-PETSc Configuration
-\end_layout
-
-\begin_layout Standard
-Navigate to the directory containing the PETSc source:
-\end_layout
-
-\begin_layout Quote
-
-\family typewriter
-$ cd petsc-dev
-\end_layout
-
-\begin_layout Standard
-To configure PETSc, run 
-\family typewriter
-./config/configure.py
-\family default
- with the appropriate arguments to configure PETSc for your system.
- At a minimum, configuring PETSc for use with PyLith requires the following
- arguments:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
---with-clanguage=c++
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
---with-boost=1
-\end_layout
-
-\begin_layout LyX-Code
---with-chaco=1
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
---with-sieve=1
-\end_layout
-
-\begin_layout LyX-Code
---with-shared=1
-\end_layout
-
-\begin_layout Standard
-You will need to specify additional options; the specific set of options
- you will use depends upon the libraries and compilers you have available.
- See the examples below.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-TIP:
-\series default
- Run 
-\family typewriter
-./config/configure.py --help
-\family default
- to see the long list of all possible options.
-\end_layout
-
-\begin_layout Standard
-Building PETSc with Sieve requires the following external libraries:
-\end_layout
-
-\begin_layout Itemize
-an MPI library
-\end_layout
-
-\begin_layout Itemize
-BLAS/LAPACK
-\end_layout
-
-\begin_layout Itemize
-Boost
-\end_layout
-
-\begin_layout Itemize
-Chaco
-\end_layout
-
-\begin_layout Standard
-You can instruct PETSc to download and install any or all of these libraries
- for you.
-\end_layout
-
-\begin_layout Standard
-If you have an MPI implementation installed on your workstation, you can
- use it, or let PETSc download and install one for you.
- If you are installing on a cluster, you should configure PETSc to use an
- existing MPI library installed by the system administrators.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-\color red
-Warning:
-\color inherit
- 
-\series default
-\color none
-When using an existing MPI library (instead of one downloaded and installed
- by PETSc), check to make sure that a shared version of the MPI library
- is available.
- PyLith will not work correctly with a static MPI library (e.g., 
-\family typewriter
-libmpi.a
-\family default
- or 
-\family typewriter
-libmpich.a
-\family default
-).
-\end_layout
-
-\begin_layout Standard
-If you have an architecture-optimized version of BLAS/LAPACK, you should
- use those instead of asking PETSc to download and build one for you.
- In some cases, PETSc will find known optimized implementations of BLAS/LAPACK
- (e.g., vecLib on Mac OS X).
-\end_layout
-
-\begin_layout Standard
-Be sure to include flags indicating where MPI and BLAS/LAPACK are if you
- want to use a preinstalled implementation.
- If not, be sure to tell PETSc to download those packages.
- If you do not want to build PETSc using the GNU compilers, be sure to let
- PETSc know which compilers you want to use instead.
-\end_layout
-
-\begin_layout Subsubsection
-PETSc Configuration Examples
-\end_layout
-
-\begin_layout Standard
-In our first example, we configure PETSc on a Linux workstation.
- BLAS and LAPACK are preinstalled under 
-\family typewriter
-/usr/lib
-\family default
-; PETSc finds these system libraries automatically.
- We happen to have MPICH already installed; 
-\family typewriter
-mpicc
-\family default
- and other related MPI commands are accessible via our 
-\family typewriter
-PATH
-\family default
-, so PETSc finds our MPICH installation automatically.
- However, we don't have Boost or Chaco installed, so we instruct PETSc to
- download these packages for us.
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ ls -1 /usr/lib/libblas.so /usr/lib/liblapack.so
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-/usr/lib/libblas.so
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-/usr/lib/liblapack.so
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ which mpicc
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-/opt/mpich/bin/mpicc
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ ./config/configure.py 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-sieve=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-clanguage=C++ 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-shared=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-boost=1 --download-boost=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-chaco=1 --download-chaco=1
-\end_layout
-
-\begin_layout Standard
-In our next example, we configure PETSc on a Mac OS X machine.
- We have installed Apple's Xcode and the G95 FORTRAN compiler.
- However, we don't have anything else preinstalled, so we instruct PETSc
- to download almost everything else, including MPICH.
- Intentionally, we don't specify anything about BLAS/LAPACK: PETSc automatically
- finds vecLib, which is built-in to Mac OS X.
-\end_layout
-
-\begin_layout LyX-Code
-$ ./config/configure.py 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-sieve=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-clanguage=C++ 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-fc=g95 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-shared=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-boost=1 --download-boost=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-chaco=1 --download-chaco=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-mpi=1 --download-mpich=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-x=0
-\end_layout
-
-\begin_layout Standard
-In our final example, we configure PETSc on a 64-bit Linux cluster.
- We use an existing MPI implementation installed by the system administrators.
- BLAS/LAPACK is missing, so we instruct PETSc to download it, in addition
- to Boost and Chaco.
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ ./config/configure.py 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-sieve=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-clanguage=C++ 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
-    --with-shared=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-mpi-dir=/opt/mpich/myrinet_mx2g/intel 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --download-f-blas-lapack=1
-\family default
- 
-\family typewriter
-
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-boost=1 --download-boost=1 
-\backslash
-
-\end_layout
-
-\begin_layout LyX-Code
- 
-\family typewriter
-   --with-chaco=1 --download-chaco=1
-\end_layout
-
-\begin_layout Subsubsection
-Running 
-\family typewriter
-configure.py
-\end_layout
-
-\begin_layout Standard
-After several minutes, the configure script should finish and display the
- PETSc settings.
- Check to make sure these match your expectations before continuing.
-\end_layout
-
-\begin_layout Subsubsection
-Setting PETSC Environment Variables
-\end_layout
-
-\begin_layout Standard
-Before building PETSc, set the 
-\family typewriter
-PETSC_DIR
-\family default
- and 
-\family typewriter
-PETSC_ARCH
-\family default
- environment variables.
- Upon completion, the configure script displays instructions for setting
- these two variables:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-**
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** Before running "make" your PETSC_ARCH must be specified with:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** ** setenv PETSC_ARCH linux-gnu-cxx-debug (csh/tcsh)
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** ** PETSC_ARCH=linux-gnu-cxx-debug; export PETSC_ARCH (sh/bash)
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-**
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-**
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** Before running "make" your PETSC_DIR must be specified with:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** ** setenv PETSC_DIR /opt/petsc-dev (csh/tcsh)
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-** ** PETSC_DIR=/opt/petsc-dev; export PETSC_DIR (sh/bash)
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-**
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-**
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-PETSC_ARCH
-\family default
- is a tag identifying this configuration of PETSc.
- 
-\family typewriter
-PETSC_DIR
-\family default
- is set to the full path of the top-level directory in the PETSc source
- tree (the 
-\family typewriter
-petsc-dev
-\family default
- directory).
- You will want to set these environment variables in your 
-\family typewriter
-.bashrc
-\family default
-, 
-\family typewriter
-.cshrc
-\family default
-, or similar file.
-\end_layout
-
-\begin_layout Subsubsection
-Building PETSc
-\end_layout
-
-\begin_layout Standard
-After setting 
-\family typewriter
-PETSC_DIR
-\family default
- and 
-\family typewriter
-PETSC_ARCH
-\family default
-, run 
-\family typewriter
-make
-\family default
- to build PETSc:
-\end_layout
-
-\begin_layout Quote
-
-\family typewriter
-$ make
-\end_layout
-
-\begin_layout Subsubsection
-Testing the PETSc Installation
-\end_layout
-
-\begin_layout Standard
-Optionally, you may test your PETSc installation:
-\end_layout
-
-\begin_layout Quote
-
-\family typewriter
-$ make test
-\end_layout
-
-\begin_layout Standard
-One of the tests will attempt to display some X windows.
- If X windows is not available from the shell in which you run 
-\family typewriter
-make test
-\family default
-, then that test will fail.
-\end_layout
-
-\begin_layout Subsection
-Installing nemesis
-\end_layout
-
-\begin_layout Standard
-As with many other packages, to install nemesis, first download the source
- package available at the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
-.
- After unpacking the source, run the prepackaged shell script to configure
- nemesis for your system.
- Finally, use the 
-\family typewriter
-make
-\family default
- utility to build and install nemesis.
- 
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the Nemesis Source
-\end_layout
-
-\begin_layout Standard
-Download Nemesis from the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
- and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf nemesis-1.0.1.tar.gz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c nemesis-1.0.1.tar.gz | tar xf -
-\end_layout
-
-\begin_layout Subsubsection
-Nemesis Installation Procedure
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-TIP:
-\series default
- If you run into problems configuring or building nemesis, send both the
- 
-\family typewriter
-config.log
-\family default
- and 
-\family typewriter
-make.log
-\family default
- files to the CIG Short-Term Crustal Dynamics Mailing List 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cig-short at geodynamics.org
-\end_layout
-
-\end_inset
-
-.
- To create the 
-\family typewriter
-make.log
-\family default
- file, redirect the output of 
-\family typewriter
-make
-\family default
- to a file: 
-\family typewriter
-make 
-\begin_inset Formula $>$
-\end_inset
-
- make.log
-\family default
-.
- 
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install Nemesis:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the Nemesis source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd nemesis-1.0.1
-\end_layout
-
-\begin_layout Enumerate
-Run .
-\family typewriter
-/configure
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ ./configure --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make
-\family default
- to build the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make install
-\family default
- to install the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make install
-\end_layout
-
-\begin_layout Standard
-The above commands will install Nemesis under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
-\end_layout
-
-\begin_layout Subsection
-Installing Proj.4
-\end_layout
-
-\begin_layout Standard
-As with many other packages, to install Proj.4, first download the source
- package available at the PROJ.4 web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-trac.osgeo.org/proj
-\end_layout
-
-\end_inset
-
-.
- You should download both the source code and the U.S., Canadian, and New
- Zealand datum shift grid.
- After unpacking the files, run the prepackaged shell script to configure
- Proj.4 for your system.
- Finally, use the 
-\family typewriter
-make
-\family default
- utility to build and install Proj.4.
- 
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the Proj.4 Source
-\end_layout
-
-\begin_layout Standard
-Download Proj.4 from the Proj.4 website 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-trac.osgeo.org/proj
-\end_layout
-
-\end_inset
-
-.
- Download the source archive and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf proj-4.7.0.tar.gz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c proj-4.7.0.tar.gz | tar xf -
-\end_layout
-
-\begin_layout Standard
-Download the datum shift archive and unpack it in the 
-\family typewriter
-proj-4.7.0/nad
-\family default
- directory using the 
-\family typewriter
-unzip
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ cd proj-4.7.0/nad$ unzip proj-datumgrid-1.5.zip
-\end_layout
-
-\begin_layout Standard
-Note: The Ubuntu Proj.4 package does not include the datum shifts due to
- licensing issues.
- Consequently, if you are using Ubuntu, we recommend that you build from
- source with the datum shifts.
-\end_layout
-
-\begin_layout Subsubsection
-Proj.4 Installation Procedure
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install Proj.4:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the Proj.4 source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd proj-4.7.0
-\end_layout
-
-\begin_layout Enumerate
-Run .
-\family typewriter
-/configure
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ ./configure --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make
-\family default
- to build the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make install
-\family default
- to install the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make install
-\end_layout
-
-\begin_layout Standard
-The above commands will install Proj.4 under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
-\end_layout
-
-\begin_layout Subsection
-Installing Numpy
-\end_layout
-
-\begin_layout Standard
-Numpy is written exclusively in Python, although it has some Python extension
- modules.
- As a result, its installation is relatively simple.
- First, download the source package available at the SciPy.org web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.scipy.org/Download
-\end_layout
-
-\end_inset
-
-.
- Download the Numpy source code and install the package.
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the Numpy Source
-\end_layout
-
-\begin_layout Standard
-Download Numpy from the SciPy website 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.scipy.org
-\end_layout
-
-\end_inset
-
-.
- Download the source archive and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf numpy-1.4.1.tar.gz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c numpy-1.4.1.tar.gz | tar xf -
-\end_layout
-
-\begin_layout Subsubsection
-Numpy Installation Procedure
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install Numpy:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the Numpy source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd numpy-1.4.1
-\end_layout
-
-\begin_layout Enumerate
-Run 
-\family typewriter
-python setup.py install
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ python setup.py install --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Standard
-The above commands will install Numpy under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
- You can customize the BLAS and LAPACK libraries used in building numpy
- by editing the site.cfg file.
-\end_layout
-
-\begin_layout Subsection
-Installing FIAT
-\end_layout
-
-\begin_layout Standard
-FIAT is written exclusively in Python.
- As a result, its installation is very simple.
- First, download the source package available at the FENICS web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.fenics.org/wiki/Download
-\end_layout
-
-\end_inset
-
-.
- Download the FIAT source code and install the package.
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the FIAT Source
-\end_layout
-
-\begin_layout Standard
-Download FIAT from the FENICS website 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-www.fenics.org
-\end_layout
-
-\end_inset
-
-.
- Versions newer than v0.3.5 have are not compatible with PyLith.
- Download the source archive and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf FIAT-0.3.5.tar.gz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c FIAT-0.3.5.tar.gz | tar xf -
-\end_layout
-
-\begin_layout Subsubsection
-FIAT Installation Procedure
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install FIAT:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the FIAT source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd FIAT-0.3.5
-\end_layout
-
-\begin_layout Enumerate
-Run 
-\family typewriter
-python setup.py install
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ python setup.py install --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Standard
-The above commands will install FIAT under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
-\end_layout
-
-\begin_layout Subsection
-Installing Spatialdata
-\end_layout
-
-\begin_layout Standard
-As with many other packages, to install Spatialdata, first download the
- source package available at the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
-.
- After unpacking the source, run the prepackaged shell script to configure
- Spatialdata for your system.
- Finally, use the 
-\family typewriter
-make
-\family default
- utility to build and install Spatialdata.
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the Spatialdata Source
-\end_layout
-
-\begin_layout Standard
-Download Spatialdata from the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
- and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf spatialdata-0.6.0.tgz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c spatialdata-0.6.0.tgz | tar xf -
-\end_layout
-
-\begin_layout Subsubsection
-Spatialdata Installation Procedure
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-TIP:
-\series default
- If you run into problems configuring or building spatialdata, send both
- the 
-\family typewriter
-config.log
-\family default
- and 
-\family typewriter
-make.log
-\family default
- files to the CIG Short-Term Crustal Dynamics Mailing List 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cig-short at geodynamics.org
-\end_layout
-
-\end_inset
-
-.
- To create the 
-\family typewriter
-make.log
-\family default
- file, redirect the output of 
-\family typewriter
-make
-\family default
- to a file: 
-\family typewriter
-make 
-\begin_inset Formula $>$
-\end_inset
-
- make.log
-\family default
-.
- 
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install Spatialdata:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the Spatialdata source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd spatialdata
-\end_layout
-
-\begin_layout Enumerate
-Run .
-\family typewriter
-/configure
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ ./configure --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make
-\family default
- to build the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make install
-\family default
- to install the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make install
-\end_layout
-
-\begin_layout Standard
-The above commands will install Spatialdata under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Installing-PyLith"
-
-\end_inset
-
-Installing PyLith
-\end_layout
-
-\begin_layout Standard
-To install PyLith, download the source package available at the PyLith web
- page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
-.
- After unpacking the source, run the prepackaged shell script to configure
- PyLith for your system.
- Finally, use the 
-\family typewriter
-make
-\family default
- utility to build and install PyLith from source.
- 
-\end_layout
-
-\begin_layout Subsubsection
-Downloading and Unpacking the PyLith Source
-\end_layout
-
-\begin_layout Standard
-Download PyLith from the PyLith web page 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/packages/short/pylith
-\end_layout
-
-\end_inset
-
- and unpack it using the 
-\family typewriter
-tar
-\family default
- command: 
-\end_layout
-
-\begin_layout LyX-Code
-$ tar xzf pylith-1.5.0.tgz
-\end_layout
-
-\begin_layout Standard
-If you don't have GNU Tar, try the following command instead: 
-\end_layout
-
-\begin_layout LyX-Code
-$ gunzip -c pylith-1.5.0.tgz | tar xf -
-\end_layout
-
-\begin_layout Subsubsection
-PyLith Installation Procedure
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-TIP:
-\series default
- If you run into problems configuring or building PyLith, send both the
- 
-\family typewriter
-config.log
-\family default
- and 
-\family typewriter
-make.log
-\family default
- files to the CIG Short-Term Crustal Dynamics Mailing List 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cig-short at geodynamics.org
-\end_layout
-
-\end_inset
-
-.
- To create the 
-\family typewriter
-make.log
-\family default
- file, redirect the output of 
-\family typewriter
-make
-\family default
- to a file: 
-\family typewriter
-make 
-\begin_inset Formula $>$
-\end_inset
-
- make.log
-\family default
-.
- 
-\end_layout
-
-\begin_layout Standard
-After unpacking the source, use the following procedure to install PyLith:
-\end_layout
-
-\begin_layout Enumerate
-Navigate (i.e., 
-\family typewriter
-cd
-\family default
-) to the directory containing the PyLith source
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ cd pylith-1.5.0
-\end_layout
-
-\begin_layout Enumerate
-Run .
-\family typewriter
-/configure
-\family default
- to configure the package for your system
-\family typewriter
-.
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ ./configure --prefix=$HOME/cig
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make
-\family default
- to build the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make
-\end_layout
-
-\begin_layout Enumerate
-Type 
-\family typewriter
-make install
-\family default
- to install the package.
-\family typewriter
-
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-$ make install
-\end_layout
-
-\begin_layout Standard
-The above commands will install PyLith under 
-\family typewriter
-$HOME/cig
-\family default
-.
- Afterwards, you may wish to add 
-\family typewriter
-PREFIX/bin
-\family default
- (
-\family typewriter
-$HOME/cig/bin
-\family default
-, in this example) to your 
-\family typewriter
-PATH
-\family default
-.
- The 
-\family typewriter
-make install
-\family default
- command creates a script called 
-\family typewriter
-pylith
-\family default
- under 
-\family typewriter
-PREFIX/bin
-\family default
-; this is the script you will use to run PyLith.
-\end_layout
-
-\begin_layout Standard
-For more details about 
-\family typewriter
-configure
-\family default
-, see Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Configuration"
-
-\end_inset
-
- below.
-\end_layout
-
-\begin_layout Standard
-After running 
-\family typewriter
-make install
-\family default
-, you may (if desired) run 
-\family typewriter
-make clean
-\family default
- in the build directory to save disk space.
-\end_layout
-
-\begin_layout Subsubsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Configuration"
-
-\end_inset
-
-PyLith Configuration
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-configure
-\family default
- script checks for various system features.
- As it runs, it prints messages informing you of which features it is checking
- for.
- Upon successful completion, it generates a 
-\family typewriter
-Makefile
-\family default
- in each source directory of the package.
- It also generates a 
-\family typewriter
-portinfo
-\family default
- header file, which contains system-dependent definitions.
- 
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-configure
-\family default
- script will attempt to guess the correct values of various installation
- parameters.
- In the event that the default values used by 
-\family typewriter
-configure
-\family default
- are incorrect for your system, or 
-\family typewriter
-configure
-\family default
- is unable to guess the value of a certain parameter, you may have to specify
- the correct value by hand.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-Important:
-\series default
- If the 
-\family typewriter
-configure
-\family default
- script fails, and you don't know what went wrong, examine the log file
- 
-\family typewriter
-config.log
-\family default
-.
- This file contains a detailed transcript of all the checks 
-\family typewriter
-configure
-\family default
- performed.
- Most importantly, it includes the error output (if any) from your compiler.
- When seeking help for 
-\family typewriter
-configure
-\family default
- failures on the CIG Short-Term Crustal Dynamics Mailing List 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cig-short at geodynamics.org
-\end_layout
-
-\end_inset
-
-, please send 
-\family typewriter
-config.log
-\family default
- as an attachment.
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-configure
-\family default
- script will automatically check for needed Python dependencies, including
- the Pythia package (which includes the Pyre framework).
- If necessary, 
-\family typewriter
-configure
-\family default
- will download missing Python packages from the Internet.
-\end_layout
-
-\begin_layout Standard
-PyLith requires Pythia v0.8.1.6 or later, which 
-\family typewriter
-configure
-\family default
- downloads directly from CIG.
- (Pythia v0.8.1.x is distinct from Pythia v0.8, which you may have installed
- previously.) Pythia v0.8.1.x is pure Python, and resides in a file or directory
- with the extension 
-\family typewriter
-.egg
-\family default
- (e.g., 
-\family typewriter
-pythia-0.8.1.6.egg
-\family default
-).
- The 
-\family typewriter
-configure
-\family default
- script may download other 
-\family typewriter
-.egg
-\family default
- packages, in addition to Pythia.
- These are Python packages which are required (either directly or indirectly)
- by PyLith.
-\end_layout
-
-\begin_layout Subsubsection
-Configure Usage
-\end_layout
-
-\begin_layout Standard
-For a detailed list of 
-\family typewriter
-configure
-\family default
- variables and options, give 
-\family typewriter
-configure
-\family default
- the 
-\family typewriter
---help
-\family default
- option:
-\end_layout
-
-\begin_layout LyX-Code
-$ ./configure --help
-\end_layout
-
-\begin_layout Standard
-The following is a summary of the variables and options that are important
- when installing PyLith.
- 
-\end_layout
-
-\begin_layout Subsubsection
-Environment Variables
-\end_layout
-
-\begin_layout Standard
-Environment variables may be specified as arguments to 
-\family typewriter
-configure
-\family default
-, e.g.,
-\end_layout
-
-\begin_layout LyX-Code
-$ ./configure PYTHON=/usr/bin/python2.4
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float table
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\noindent
-\align center
-\begin_inset Tabular
-<lyxtabular version="3" rows="5" columns="2">
-<features>
-<column alignment="center" valignment="top" width="1in">
-<column alignment="left" valignment="top" width="3.5in">
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\series bold
-Variable
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\series bold
-Description
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-CXX
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-C++ compiler
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-PYTHON
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-Python interpreter.
- This is useful if you have Python installed in a non-standard location,
- e.g.,
-\end_layout
-
-\begin_layout Plain Layout
-
-\family typewriter
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-./configure 
-\backslash
-
-\end_layout
-
-\begin_layout Plain Layout
-
-\family typewriter
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-
-\begin_inset space ~
-\end_inset
-
-PYTHON=/opt/python2.3/bin/python
-\family default
- 
-\end_layout
-
-\begin_layout Plain Layout
-By default, 
-\family typewriter
-configure
-\family default
- will search for a suitable Python interpreter using your 
-\family typewriter
-PATH
-\family default
- environment variable.
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-PETSC_DIR
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-PETSc installation/build directory.
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-PETSC_ARCH
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-(optional) PETSc configuration tag.
- If not specified, 
-\family typewriter
-configure
-\family default
- will pick a default configuration.
-\end_layout
-
-\end_inset
-</cell>
-</row>
-</lyxtabular>
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-\color red
-Warning:
-\series default
-\color none
- Any two C++ compilers are incompatible with one another.
- Even different versions of the same C++ compiler can be incompatible.
- Therefore, PyLith must be built using the same C++ compiler used to configure
- and build PyLith's dependencies.
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Pyre-Configuration"
-
-\end_inset
-
-Pyre Configuration
-\end_layout
-
-\begin_layout Standard
-Pyre is automatically downloaded by PyLith's configure script as a part
- of the Pythia package.
- Pythia is pure Python, so it requires no special configuration to build
- or install.
-\end_layout
-
-\begin_layout Standard
-However, Pyre manages the launching of parallel runs of PyLith under MPI,
- and the scheduling of PyLith jobs when used with a batch system.
- Therefore, before running PyLith, you must create a small configuration
- file which instructs Pyre how to launch and schedule PyLith runs on your
- system.
-\end_layout
-
-\begin_layout Subsubsection
-Pyre Configuration on a Laptop of Desktop Computer
-\end_layout
-
-\begin_layout Standard
-On a workstation or laptop, there is no job scheduler or communication network
- between compute nodes.
- In this scenario, Pyre is trivial to configure.
- Simply create the file 
-\family typewriter
-~/.pyre/pylithapp/pylithapp.cfg
-\family default
- with the following contents:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-[pylithapp.launcher]
-\end_layout
-
-\begin_layout LyX-Code
-command = mpiexec -np ${nodes}
-\end_layout
-
-\begin_layout Standard
-The only trick is to specify the right command for your MPI implementation.
- Specify the 
-\family typewriter
-mpiexec
-\family default
- command if you are using MPICH2 (which will be the case if you instructed
- PETSc to download MPICH for you).
-\end_layout
-
-\begin_layout Standard
-If you are using MPICH1, enter the following instead:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-[pylithapp.launcher]
-\end_layout
-
-\begin_layout LyX-Code
-command = mpirun -np ${nodes}
-\end_layout
-
-\begin_layout Standard
-See the documentation for your MPI implementation if you are unsure of the
- command to specify.
-\end_layout
-
-\begin_layout Subsubsection
-Pyre Configuration on a Cluster
-\end_layout
-
-\begin_layout Standard
 If you are installing PyLith on a cluster with a batch system, you can configure
  Pyre such that the 
 \family typewriter
@@ -3153,7 +451,7 @@
 ), for the benefit of all users and all Pyre-based applications.
 \end_layout
 
-\begin_layout Subsubsection
+\begin_layout Subsection
 \begin_inset CommandInset label
 LatexCommand label
 name "sub:Launchers-and-Schedulers"
@@ -3325,7 +623,7 @@
  command, and the job will immediately terminate.)
 \end_layout
 
-\begin_layout Subsubsection
+\begin_layout Subsection
 Running without a Batch System
 \end_layout
 
@@ -3436,7 +734,7 @@
  It will contain a list of the nodes where PyLith has run.
 \end_layout
 
-\begin_layout Subsubsection
+\begin_layout Subsection
 Using a Batch System
 \end_layout
 
@@ -3539,424 +837,5 @@
 .
 \end_layout
 
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Software-Repository"
-
-\end_inset
-
-Installing from the Software Repository
-\end_layout
-
-\begin_layout Standard
-The PyLith source code is available via the CIG Subversion Repository 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/software/Repository/
-\end_layout
-
-\end_inset
-
-.
- The PETSc source code is available via a Mercurial repository.
- This allows users to view the revision history of the code and check out
- the most recent development version of the software.
-\end_layout
-
-\begin_layout Quote
-
-\series bold
-\color red
-Warning:
-\series default
-\color none
- Building PyLith using the source repositories is recommended only for expert
- users who are willing to work with a moving target and rebuild on a frequent
- basis.
-  The installation instructions cover the basic steps and assume the user
- has experience building and installing software.
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sub:Additional-Tools"
-
-\end_inset
-
-Additional Tools You Will Need
-\end_layout
-
-\begin_layout Standard
-In addition to the usual system requirements, you will need a handful of
- additional development tools installed in order to work with the source
- from the software repositories.
-\end_layout
-
-\begin_layout Itemize
-Subversion
-\end_layout
-
-\begin_layout Itemize
-Mercurial (0.9 or later)
-\end_layout
-
-\begin_layout Itemize
-GNU Autotools (Autoconf, Automake, and Libtool)
-\end_layout
-
-\begin_layout Itemize
-SWIG (1.3.33 or later)
-\end_layout
-
-\begin_layout Subsubsection
-Subversion
-\end_layout
-
-\begin_layout Standard
-To check out the PyLith source, you must have a Subversion client installed.
- To check, type 
-\family typewriter
-svn
-\family default
-; it should return a usage message.
-\end_layout
-
-\begin_layout LyX-Code
-$ svn
-\end_layout
-
-\begin_layout LyX-Code
-Type 'svn help' for usage.
-\end_layout
-
-\begin_layout Standard
-Many flavors of Unix have Subversion packages.
- You do not need anything but the basic Subversion client package.
-\end_layout
-
-\begin_layout Standard
-For more information on Subversion, visit the Subversion website 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-subversion.tigris.org
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Mercurial
-\end_layout
-
-\begin_layout Standard
-To check out the PETSc source, you must have Mercurial 0.9 or later installed.
- You will likely have to build Mercurial from source, but this is a very
- easy task that takes only a couple of minutes.
- To learn how to download and install Mercurial, visit the Mercurial web
- site 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.selenic.com/mercurial
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Autotools
-\end_layout
-
-\begin_layout Standard
-To generate the build system for PyLith, you must have the GNU tools Autoconf,
- Automake, and Libtool installed.
- To check, enter the following commands:
-\end_layout
-
-\begin_layout LyX-Code
-$ autoconf --version
-\end_layout
-
-\begin_layout LyX-Code
-$ automake --version
-\end_layout
-
-\begin_layout LyX-Code
-$ libtoolize --version
-\end_layout
-
-\begin_layout Standard
-For more information about these GNU tools, see the GNU website 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.gnu.org/software
-\end_layout
-
-\end_inset
-
-.
- The PyLith source package was created with Autoconf 2.61, Automake 1.9.6,
- and Libtool 1.5.22.
-\end_layout
-
-\begin_layout Subsection
-Downloading the PETSc Source using Mercurial
-\end_layout
-
-\begin_layout Standard
-Pull the source code from Argonne National Laboratory (ANL) and place the
- source tree in a suitable location.
- The steps below will create a 
-\family typewriter
-petsc-dev
-\family default
- sub-directory in the current directory.
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ hg clone http://petsc.cs.iit.edu/petsc/petsc-dev
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ cd petsc-dev/config
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ hg clone http://petsc.cs.iit.edu/petsc/BuildSystem BuildSystem
-\end_layout
-
-\begin_layout Standard
-In the future, you will likely want to update the PETSc source tree to include
- bug fixes, new features, etc.
- To update PETSc, perform the following commands:
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ cd petsc-dev
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ hg pull
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ hg update
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ cd config
-\end_layout
-
-\begin_layout LyX-Code
-
-\family typewriter
-$ hg pull
-\end_layout
-
-\begin_layout LyX-Code
-$ hg update
-\end_layout
-
-\begin_layout Subsection
-Downloading the PyLith Source using Subversion
-\end_layout
-
-\begin_layout Standard
-To check out the latest version of PyLith, use the 
-\family typewriter
-svn checkout
-\family default
- command:
-\end_layout
-
-\begin_layout LyX-Code
-$ svn checkout 
-\family typewriter
-http://geodynamics.org/svn/cig/short/3D/PyLith/trunk pylith
-\end_layout
-
-\begin_layout Standard
-This will create the local directory 
-\family typewriter
-pylith
-\family default
- (if it doesn't already exist) and fill it with the latest PyLith source
- from the CIG software repository.
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-pylith
-\family default
- directory thus created is called a 
-\emph on
-working copy
-\emph default
-.
- To merge the latest changes into an existing working copy, use the 
-\family typewriter
-svn update
-\family default
- command:
-\end_layout
-
-\begin_layout LyX-Code
-$ cd pylith
-\end_layout
-
-\begin_layout LyX-Code
-$ svn update
-\end_layout
-
-\begin_layout Standard
-This will preserve any local changes you have made to your working copy.
-\end_layout
-
-\begin_layout Subsection
-Generating the GNU Build System
-\end_layout
-
-\begin_layout Standard
-Your working directory should now contain a fresh checkout of PyLith and
- PETSc:
-\end_layout
-
-\begin_layout LyX-Code
-$ ls
-\end_layout
-
-\begin_layout LyX-Code
-petsc-dev
-\end_layout
-
-\begin_layout LyX-Code
-pylith
-\end_layout
-
-\begin_layout LyX-Code
-$
-\end_layout
-
-\begin_layout Standard
-You are now ready to install PETSc as described in Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Installing-PETSc"
-
-\end_inset
-
- earlier in this chapter.
-\end_layout
-
-\begin_layout Standard
-However, before you can run 
-\family typewriter
-configure
-\family default
- or 
-\family typewriter
-make
-\family default
- in the 
-\family typewriter
-pylith
-\family default
- directory, you must generate the necessary files using the GNU tools.
- The easiest way to do this is to run 
-\family typewriter
-autoreconf -if
-\family default
-:
-\end_layout
-
-\begin_layout LyX-Code
-$ cd pylith
-\end_layout
-
-\begin_layout LyX-Code
-$ autoreconf -if
-\end_layout
-
-\begin_layout LyX-Code
-$ ./configure
-\end_layout
-
-\begin_layout LyX-Code
-$ make
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-autoreconf
-\family default
- tool runs Autoconf to generate the 
-\family typewriter
-configure
-\family default
- script from 
-\family typewriter
-configure.ac
-\family default
-.
- It also runs Automake to generate 
-\family typewriter
-Makefile.in
-\family default
- from 
-\family typewriter
-Makefile.am
-\family default
- in each source directory.
- After running 
-\family typewriter
-autoreconf
-\family default
-, install PyLith as described in Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Installing-PyLith"
-
-\end_inset
-
- earlier in this chapter.
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
 \end_body
 \end_document



More information about the CIG-COMMITS mailing list