[cig-commits] r16895 - short/3D/PyLith/trunk/doc/install
brad at geodynamics.org
brad at geodynamics.org
Thu Jun 3 22:02:58 PDT 2010
Author: brad
Date: 2010-06-03 22:02:58 -0700 (Thu, 03 Jun 2010)
New Revision: 16895
Modified:
short/3D/PyLith/trunk/doc/install/Cluster_CIT-garuda.txt
short/3D/PyLith/trunk/doc/install/Cluster_CIT-pangu.txt
Log:
Updated pangu instructions. Fixed some garuda stuff.
Modified: short/3D/PyLith/trunk/doc/install/Cluster_CIT-garuda.txt
===================================================================
--- short/3D/PyLith/trunk/doc/install/Cluster_CIT-garuda.txt 2010-06-04 04:56:55 UTC (rev 16894)
+++ short/3D/PyLith/trunk/doc/install/Cluster_CIT-garuda.txt 2010-06-04 05:02:58 UTC (rev 16895)
@@ -1,6 +1,6 @@
======================================================================
-INSTRUCTIONS FOR INSTALLING PYLITH ON AN INTEL CLUSTER
-======================================================================
+INSTRUCTIONS FOR INSTALLING PYLITH ON THE CALTECH LINUX CLUSTER GARUDA
+ ======================================================================
These installation instructions assume suitable C/C++ and Fortran
compilers have been installed along with MPI. MPI on clusters is often
@@ -216,6 +216,8 @@
Check out spatialdata from the publicly accessible CIG SVN repository.
cd $HOME/src
svn co http://geodynamics.org/svn/cig/cs/spatialdata-0.1/trunk spatialdata-dev
+ cd spatialdata-dev
+ autoreconf -if
Run configure in the build dir.
cd $HOME/scratch/build/$TOOLS_FORMAT/spatialdata-dev
@@ -274,6 +276,8 @@
Check out nemesis from the publicly accessible CIG SVN repository.
cd $HOME/src
svn co http://geodynamics.org/svn/cig/cs/nemesis/trunk nemesis-dev
+ cd nemesis-dev
+ autoreconf -if
Run configure in the build dir.
cd $HOME/scratch/build/$TOOLS_FORMAT/nemesis-dev
@@ -297,6 +301,8 @@
Check out PyLith from the publicly accessible CIG SVN repository.
cd $HOME/src
svn co http://geodynamics.org/svn/cig/short/3D/PyLith/trunk pylith-dev
+ cd pylith-dev
+ autoreconf -if
Run configure in the build dir.
cd $HOME/scratch/build/$TOOLS_FORMAT/pylith-dev
Modified: short/3D/PyLith/trunk/doc/install/Cluster_CIT-pangu.txt
===================================================================
--- short/3D/PyLith/trunk/doc/install/Cluster_CIT-pangu.txt 2010-06-04 04:56:55 UTC (rev 16894)
+++ short/3D/PyLith/trunk/doc/install/Cluster_CIT-pangu.txt 2010-06-04 05:02:58 UTC (rev 16895)
@@ -2,354 +2,34 @@
INSTRUCTIONS FOR INSTALLING PYLITH ON THE CALTECH LINUX CLUSTER PANGU
======================================================================
-/opt/openmpi/1.4.2/intel
-/opt/intel/Compiler/11.1/072/
-/opt/intel/Compiler/11.1/072/mkl/lib
+These instructions are nearly identical to those in
+Cluster_CIT-garuda.txt. As a result, we only mention those settings
+which differ.
+
+See the files in the Cluster_CIT-pangu directory for the settings used
+to setup the environment variables using the bash shell. The
+$TOOLS_FORMAT environment variable is used to differentiate between
+packages built with different compilers and/or different optimization
+settings. In this case, TOOLS_FORMAT is intel-11.1. Because this is a
+cluster the tools are built for production runs using
+high-optimization level. You should setup your environment BEFORE
+building the packages.
-Python
- http://www.python.org/ftp/python/2.6.5/Python-2.6.5.tgz
+We use the Intel 11.1 compiler and MKL math libraries. These are in
+ /opt/intel/Compiler/11.1/072/
+ /opt/intel/Compiler/11.1/072/mkl/lib
-cppunit
- http://downloads.sourceforge.net/cppunit/cppunit-1.12.1.tar.gz
+We use OpenMPI version 1.4.2 installed in
+ /opt/openmpi/1.4.2/intel
-proj.4
- http://download.osgeo.org/proj/proj-4.7.0.tar.gz
- http://download.osgeo.org/proj/proj-datumgrid-1.5.zip
-FIAT
- http://www.fenics.org/pub/software/fiat/FIAT-0.3.5.tar.gz
-swig
- http://downloads.sourceforge.net/project/swig/swig/swig-1.3.40/swig-1.3.40.tar.gz?use_mirror=voxel
-
-pythia
- svn co http://geodynamics.org/svn/cig/cs/pythia/trunk pythia
-
netcdf
http://www.unidata.ucar.edu/downloads/netcdf/ftp/netcdf-4.1.1.tar.gz
numpy
- http://downloads.sourceforge.net/project/numpy/NumPy/1.4.1/numpy-1.4.1.tar.gz?use_mirror=hivelocity
+ http://downloads.sourceforge.net/project/numpy/NumPy/1.4.1/numpy-1.4.1.tar.gz
+ site.cfg
-spatialdata
- svn co http://geodynamics.org/svn/cig/cs/spatialdata-0.1/trunk spatialdata-dev
- Comment out postdep_objects (bug in ifort)
-
-mercurial
- http://mercurial.selenic.com/release/mercurial-1.5.2.tar.gz
-
PETSc
- hg clone http://petsc.cs.iit.edu/petsc/petsc-dev
- cd petsc-dev/config
- hg clone http://petsc.cs.iit.edu/petsc/BuildSystem BuildSystem
-
-nemesis
- svn co http://geodynamics.org/svn/cig/cs/nemesis/trunk nemesis-dev
-
-PyLith
- svn co http://geodynamics.org/svn/cig/short/3D/PyLith/trunk pylith-dev
-
-I place applications that are rarely updated in $HOME/tools. For CIG
-source code, I separate the source code, build directories, and
-installed code. The source code sits in $HOME/src/cig, I build the
-packages under $HOME/scratch/build/cig, and install the packages to
-$HOME/tools/cig.
-
-I use the bash shell and place all software package environment
-variables in a .bash.tools file that is read by the .bashrc file.
-
-On an x86_64 system it is important to keep files associated with a
-32-bit architecture separate from those associated with a 64-bit
-architecture. Some architecture independent files are put in
-$PREFIX/lib with 64-bit architecture files in $PREFIX/lib64. In most
-cases when a library with versions for both architectures is
-available, the linker will use the one compatible with the requested
-architecture (the default is usually the 64-bit architecture).
-
-To make things easier, I create environment variables TOOLS_DIR,
-CIG_DIR, TOOLS_FORMAT, and PYTHON_VERSION. The TOOLS_FORMAT variable
-makes it easier to maintain multiple copies of packages built with
-different options (e.g., different compilers and different levels of
-optimization). Note that the python version should match the version
-of Python you will be using. If you don't know the version of python,
-run "python --version".
-
- export TOOLS_DIR=${HOME}/tools
- export TOOLS_FORMAT=gcc-3.4_64
- export PYTHON_VERSION=2.5
-
- export CIG_DIR=${HOME}/tools/cig/${TOOLS_FORMAT}
- export CIG_INCDIR=${CIG_DIR}/include
- export CIG_LIBDIR=${CIG_DIR}/lib
- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CIG_LIBDIR}
- export PYTHONPATH=${PYTHONPATH}:${CIG_DIR}/lib64/python${PYTHON_VERSION}/site-packages:${CIG_DIR}/lib/python${PYTHON_VERSION}/site-packages
- PATH=${CIG_DIR}/bin:$PATH
-
-2. Adjust your environment to use Python 2.5 instead of Python 2.3.
-
- Python 2.3 contains bugs that prevent its full functionality on a
- x86_64 system.
-
- a. Create directory $TOOLS_DIR/python2.5.
-
- b. Create a bin subdirectory.
-
- c. Create a symbolic link for the python2.5 executable.
-
- ln -s /usr/bin/python2.5 $TOOLS_DIR/python2.5/bin/python
-
- d. Create symbolic links for the other python2.5 directories.
-
- ln -s /usr/lib/python2.5 $TOOLS_DIR/python2.5/lib
- ln -s /usr/lib64/python2.5 $TOOLS_DIR/python2.5/lib64
- ln -s /usr/include/python2.5 $TOOLS_DIR/python2.5/include
-
- e. Setup environment variables.
-
- PATH=${TOOLS_DIR}/python$PYTHON_VERSION/bin:${PATH}
- export PYTHON_DIR=${TOOLS_DIR}/python$PYTHON_VERSION/lib
- export PYTHON_LIBDIR=${TOOLS_DIR}/python$PYTHON_VERSION/lib64
- export PYTHON_INCDIR=${TOOLS_DIR}/python$PYTHON_VERSION/include
-
-3. Install mercurial (http://www.selenic.com/mercurial/wiki/)
-
- a. Untar the source code.
-
- b. Install the package.
-
- python setup.py install --prefix=$TOOLS_DIR/mercurial-1.4.3/${TOOLS_FORMAT}
-
- c. Set environment variables.
-
- MERCURIAL_DIR=${TOOLS_DIR}/mercurial-1.4.3/${TOOLS_FORMAT}
- PATH=${PATH}:${MERCURIAL_DIR}/bin
- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${MERCURIAL_DIR}/lib
- export PYTHONPATH=${PYTHONPATH}:${MERCURIAL_DIR}/lib/python${PYTHON_VERSION}/site-packages
-
-4. Setup environment variables for MPICH2 (http://www.mcs.anl.gov/research/projects/mpich2/)
-
- b. Set environment variables.
-
- export RSHCOMMAND=ssh
- export MPI_DIR=/opt/mpich/myrinet/gnu
- PATH=$MPI_DIR/bin:$PATH
- export MANPATH=$MPI_DIR/man:$MANPATH
- export MPI_INCDIR=$MPI_DIR/include
- export MPI_LIBDIR=$MPI_DIR/lib
- export LD_LIBRARY_PATH=${MPI_LIBDIR}:${LD_LIBRARY_PATH}
- export MPI_VERSION=2
-
-5. Install ParMetis (http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview)
-
- a. Untar the source and edit the Makefile.
- b. Set the CC, COPTIONS, INCDIR, LD, and LIBDIR variables.
-
- CC = gcc
- COPTIONS = -fPIC
- INCDIR = -I${MPI_INCDIR}
- LD = gcc
- LIBDIR = -L${MPI_LIBDIR} -lmpich -lpthread -lrt
-
- c. Run make. Make sure libraries are created libmetis.a and
- libparmetis.a. Don't worry about errors when attempting to create
- any executables.
-
- d. Create library and include directories by hand.
-
- mkdir -p ${TOOLS_DIR}/parmetis-3.1/$TOOLS_FORMAT/lib ${TOOLS_DIR}/parmetis-3.1/$TOOLS_FORMAT/include
-
- e. Create shared libraries by hand.
-
- cd ${TOOLS_DIR}/parmetis-3.1/${TOOLS_FORMAT}/lib
- mkdir tmp
- cd tmp
- ar -x ../libmetis.a
- gcc -o ../libmetis.so -shared *.o
- rm *.o
- ar -x ../libparmetis.a
- gcc -o ../libparmetis.so -shared *.o
- rm *.o
- cd ..
- rmdir tmp
-
- d. Copy parmetis.h to the install location.
-
- cp parmetis.h ${TOOLS_DIR}/parmetis-3.1/${TOOLS_FORMAT}/include/
-
- e. Set environment variables.
-
- PARMETIS_DIR=$TOOLS_DIR/parmetis-3.1/${TOOLS_FORMAT}
- export PARMETIS_INCDIR=$PARMETIS_DIR/include
- export PARMETIS_LIBDIR=$PARMETIS_DIR/lib
- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${PARMETIS_LIBDIR}
-
-6. Install cppunit (http://cppunit.sourceforge.net/cppunit-wiki)
-
- a. Untar the source and run configure, build, and install.
-
- ./configure --prefix=${TOOLS_DIR}/cppunit-1.10.2/${TOOLS_FORMAT}
- make
- make install
-
- b. Set environment variables.
-
- CPPUNIT_DIR=${TOOLS_DIR}/cppunit-1.10.2/${TOOLS_FORMAT}
- PATH=${PATH}:${CPPUNIT_DIR}/bin
- export CPPUNIT_LIBDIR=${CPPUNIT_DIR}/lib
- export CPPUNIT_INCDIR=${CPPUNIT_DIR}/include
- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CPPUNIT_LIBDIR}
-
-7. Install FIAT (http://www.fenics.org/wiki/FIAT)
-
- a. Install FIAT.
-
- python setup.py install --prefix=$TOOLS_DIR/fiat-0.3.1/${TOOLS_FORMAT}
-
- b. Set environment variables.
-
- FIAT_DIR=${TOOLS_DIR}/fiat-0.3.3/${TOOLS_FORMAT}
- export PYTHONPATH=${PYTHONPATH}:${FIAT_DIR}/lib/python${PYTHON_VERSION}/site-packages
-
-8. Install the development version of PETSc
- (http://www-unix.mcs.anl.gov/petsc/petsc-as/)
-
- a. Clone the source repository.
-
- hg clone http://petsc.cs.iit.edu/petsc/petsc-dev
- cd petsc-dev/config
- hg clone http://petsc.cs.iit.edu/petsc/BuildSystem BuildSystem
-
- b. Set PETSC_ARCH and PETSC_DIR environment variables.
-
- export PETSC_DIR=${TOOLS_DIR}/petsc-dev
- export PETSC_ARCH=linux_${TOOLS_FORMAT}_opt
-
- c. Configure PETSc, build, and test.
-
- ARCH_FLAGS="--PETSC_ARCH=linux_${TOOLS_FORMAT}_opt --with-debugging=no"
- LANG_FLAGS="--with-clanguage=c++"
- BUILD_FLAGS="--with-mpi-compilers=0 --with-gnu-compilers=1 --with-shared=1 --with-dynamic=1 --with-64-bit-points=1 --with-large-file-io=1 --CC=gcc --CXX=g++ --FC=g77 --F77=g77"
- MPI_FLAGS="--with-mpi-dir=${TOOLS_DIR}/mpich2-1.0.4p1/gcc-3.4_64 --with-mpi-shared=0"
- LIBS=""
- OPTIONS="--with-lgrind=0 --download-tetgen"
- PART_FLAGS="--with-chaco=1 --download-chaco=1 --with-parmetis=1 --with-parmetis-dir=${TOOLS_DIR}/parmetis-3.1/gcc-3.4_64"
- SIEVE_FLAGS="--with-sieve=1 --with-boost=1 --download-boost=1"
- config/configure.py ${ARCH_FLAGS} ${LANG_FLAGS} ${BUILD_FLAGS} --with-blas-lapack-lib="-L${ACML_LIBDIR} -lacml -lacml_mv" ${MPI_FLAGS} --LIBS="" ${OPTIONS} ${PART_FLAGS} ${SIEVE_FLAGS}
- make
- make test
-
-9. Install SWIG (http://www.swig.org/)
-
- a. Untar and install.
-
- tar -zxvf swig.1.3.39.tgz
- configure --prefix=${TOOLS_DIR}/swig-1.3.39/${TOOLS_FORMAT}
- make
- make install
-
- b. Update environment variables.
-
- SWIG_DIR=${TOOLS_DIR}/swig-1.3.39/${TOOLS_FORMAT}
- PATH=${PATH}:${SWIG_DIR}/bin
-
-10. Install pythia.
-
- a. Download the source code from the SVN repository.
-
- svn co http://geodynamics.org/svn/cig/cs/pythia/trunk pythia
-
- b. Install the software.
-
- python setup.py install --prefix=${CIG_DIR}
-
- c. Set environment variables.
-
- export PYTHIA_INCDIR=${CIG_INCDIR}/pythia-0.8
-
-11. Install nemesis.
-
- a. Download the source code from the SVN repository.
-
- svn co http://geodynamics.org/svn/cig/cs/nemesis/trunk nemesis
-
- b. Create the configure script.
-
- autoreconf -if
-
- c. Run configure, build, and install.
-
- ./configure --prefix=${CIG_DIR} CPPFLAGS="-I${CIG_INCDIR} -I${MPI_INCDIR}" LDFLAGS="-L${CIG_LIBDIR} -L${MPI_LIBDIR} -L${PVFS2_LIBDIR}" LIBS="-lpvfs2 -lssl -lpthread -lrt" CC=gcc CXX=g++ FC=g77 F77=g77
- make
- make install
-
-12. Install PROJ.4 (http://trac.osgeo.org/proj/)
-
- a. Download the source code AND the datum shifts (proj-datumgrid-1.3.zip).
-
- b. Untar the source code and unzip the datum shifts in the nad directory.
-
- c. Run configure and build.
-
- ./configure --prefix=${TOOLS_DIR}/proj-4.5.0/${TOOLS_FORMAT} CC=gcc CXX=g++ FC=g77 F77=f77
- make
- make install
-
- d. Set environment variables.
-
- PROJ4_DIR=${TOOLS_DIR}/proj-4.5.0/${TOOLS_FORMAT}
- PATH=${PATH}:${PROJ4_DIR}/bin
- export PROJ4_INCDIR=${PROJ4_DIR}/include
- export PROJ4_LIBDIR=${PROJ4_DIR}/lib
- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${PROJ4_LIBDIR}
- export MANPATH=${MANPATH}:${PROJ4_DIR}/man
-
-13. Install netcdf (http://www.unidata.ucar.edu/software/netcdf/).
-
- a. Untar the source code.
-
- b. Run configure and build.
-
- ./configure --prefix=${TOOLS_DIR}/netcdf-3.6.2/${TOOLS_FORMAT} --disable-f90 --enable-shared CC=gcc CXX=g++ F77=g77 CFLAGS=-fPIC FFLAGS=-fPIC
- make
- make install
-
- c. Set environment variables.
-
- NETCDF_DIR=${TOOLS_DIR}/netcdf-3.6.2/${TOOLS_FORMAT}
- export NETCDF_INCDIR=${NETCDF_DIR}/include
- export NETCDF_LIBDIR=${NETCDF_DIR}/lib
-
-
-14. Install spatialdata.
-
- a. Download the source code from the SVN repository.
-
- svn co http://geodynamics.org/svn/cig/cs/spatialdata-0.1/trunk spatialdata
-
- b. Create the configure script.
-
- autoreconf -if
-
- c. Run configure, build, install, and the unit tests.
-
- ./configure --enable-pythia --enable-testing --prefix=${CIG_DIR} CPPFLAGS="-I${PROJ4_INCDIR} -I${CPPUNIT_INCDIR} -I${CIG_INCDIR}" LDFLAGS="-L${PROJ4_LIBDIR} -L${CPPUNIT_LIBDIR} -L${CIG_LIBDIR} " LIBS="" CC=gcc CXX=g++ FC=g77 F77=f77
- make
- make install
- make check
-
-15. Install PyLith.
-
- a. Download the source code from the SVN repository.
-
- svn co http://geodynamics.org/svn/cig/short/3D/PyLith/trunk pylith
-
- b. Create the configure script.
-
- autoreconf -if
-
- c. Run configure, build, install, and the unit tests.
-
- ./configure --enable-testing --enable-tetgen --enable-cubit --prefix=${CIG_DIR} CPPFLAGS="-I${PROJ4_INCDIR} -I${CPPUNIT_INCDIR} -I${CIG_INCDIR} -I${PYTHIA_INCDIR} -I${NETCDF_INCDIR}" LDFLAGS="-L${PROJ4_LIBDIR} -L${CPPUNIT_LIBDIR} -L${CIG_LIBDIR} -L${NETCDF_LIBDIR}" LIBS="" CC=gcc CXX=g++ FC=g77 F77=f77
- make
- make install
- make check
+ mkl
More information about the CIG-COMMITS
mailing list