PyLith installation instructions for the
recycled cluster (radon) and dell-4300/x22
Replace $SCRATCH with the absolute path of scratch directory. A
good place to get/build all required packages on radon is /tmp
(fast).
# module purge all
# module load mpich-gcc (invokes mpich-1.2.7p1 with gcc-4.2.1
compilers)
# mkdir $SCRATCH/Pylith
PetSc
# tar -xzf petsc-dev.tar.gz; cd petsc-dev
# export PETSC_DIR=`pwd`
# ./config/configure.py --with-clanguage=C++
--with-mpi-dir=/opt/mpich-1.2.7p1/32/p4-gcc-4.2.1
--with-blas-lapack-dir=/opt/intel/mkl721 --with-shared=0
--with-debugging=0 --with-sieve=1 --with-chaco=1 --download-chaco=1
--with-boost=1 --download-boost=1 --CXXFLAGS=-DNEW_SECTION
# export PETSC_ARCH=linux-gnu-cxx-opt
# make all
Nemesis
# tar -xzf nemesis-1.0.tar.gz; cd nemesis-1.0
# ./configure --prefix=$SCRATCH/Pylith
# make; make install
Proj.4
# tar -xzf proj-4.6.0.tar.gz; cd proj-4.6.0
# ./configure --prefix=$SCRATCH/Pylith
# make; make install
Pyrexembed
# tar -xzf pyrexembed-1.0.tar.gz; cd pyrexembed-1.0
# python setup.py install --prefix=$SCRATCH/Pylith
Pyrex
# tar -xzf Pyrex-0.9.6.4.tar.gz; cd Pyrex-0.9.6.4
# python setup.py install --prefix=$SCRATCH/Pylith
FIAT
# tar -xzf FIAT-0.3.3.tar.gz; cd FIAT-0.3.3
# python setup.py install --prefix=$SCRATCH/Pylith
Numpy
# tar -xzf numpy-1.0.4.tar.gz; cd numpy-1.0.4
# python setup.py install --prefix=$SCRATCH/Pylith
Spatialdata
# tar -xzf spatialdata.tar.gz; cd spatialdata
# export PATH=$PATH:$SCRATCH/Pylith/bin
# export
PYTHONPATH=$PYTHONPATH:$SCRATCH/Pylith/lib/python2.4/site-packages
# export
PYTHONPATH=$PYTHONPATH:$SCRATCH/Pylith/lib/python2.4/site-packages/merlin-1.3.egg/merlin
# autoreconf -f -i
{If you get the error "aclocal: couldn't open directory `./m4': No
such file or directory" then simply create an empty directory named
m4}
# ./configure --prefix=$SCRATCH/Pylith
LDFLAGS="-L$SCRATCH/Pylith/lib" CPPFLAGS="-I$SCRATCH/Pylith/include
-I/usr/include/python2.4" --enable-pythia
{Do check if the PYTHONPATH variable in Makefile is okay}
#make; make install
NetCDF {optional;
used to read Cubit mesh that is stored in Exodus (based on NetCDF)
file format}
# tar -xzf netcdf.tar.gz; cd netcdf-3.6.2
# ./configure --disable-examples --disable-f77 --disable-f90
--disable-utilities --prefix=$SCRATCH/pylith
# make; make install
PyLith
# tar -xzf pylith-1.0.2.tgz; cd pylith-1.0.2
{Make sure that PATH, PYTHONPATH, PETSC_DIR
and PETSC_ARCH variables are all set}
# ./configure --prefix=$SCRATCH/Pylith --enable-cubit
CPPFLAGS="-I$SCRATCH/pylith/include"
LDFLAGS="-L$SCRATCH/pylith/lib" CXXFLAGS=-DNEW_SECTION
{If it complains about a missing 'petscconf' then simply create it
as a symlink to 'petscvariables' in
$PETSC_DIR/$PETSC_ARCH/conf}
# make
# make install
Finally create
this file in
$HOME/.pyre/pylithapp, add $SCRATCH/Pylith/bin to $PATH and delete PetSc
and all other packages.
Test the installation using the strike-slip benchmark problem
# qsub -I -l nodes=2
# pylith strikeslip_cubit.cfg strikeslip_hex8_1000m.cfg
timedep.cfg --nodes=2
---
In certain cases, for example when you build PyLith on one machine
and use on another, you might have to set/update PYTHONPATH and
LD_LIBRARY_PATH variables.