[Yt-svn] yt-commit r1081 - trunk/doc

mturk at wrangler.dreamhost.com mturk at wrangler.dreamhost.com
Tue Jan 6 23:41:38 PST 2009


Author: mturk
Date: Tue Jan  6 23:41:38 2009
New Revision: 1081
URL: http://yt.spacepope.org/changeset/1081

Log:
New version of the install script, with output directed to a log file,
Python2.6, Matplotlib 0.98.5.2, NumPy 1.2.1, PyTables 2.1, IPython 0.9.1, and
no easy_install magic -- everything is downloaded and manually installed.
Tested on Kraken and at SLAC.



Modified:
   trunk/doc/install_script.sh

Modified: trunk/doc/install_script.sh
==============================================================================
--- trunk/doc/install_script.sh	(original)
+++ trunk/doc/install_script.sh	Tue Jan  6 23:41:38 2009
@@ -15,9 +15,10 @@
 # And, feel free to drop me a line: matthewturk at gmail.com
 #
 
-#DEST_DIR="`pwd`/yt-`uname -p`"   # Installation location
+DEST_DIR="`pwd`/yt-`uname -p`"   # Installation location
 
-# Here's where you put the HDF5 path if you like
+# Here's where you put the HDF5 path if you like; otherwise it'll download it
+# and install it on its own
 #HDF5_DIR=
 
 
@@ -35,8 +36,34 @@
 #                                                                              #
 #------------------------------------------------------------------------------#
 
+function do_exit
+{
+    echo "Failure.  Check ${LOG_FILE}."
+    exit 1
+}
+
+function do_setup_py
+{
+    [ -e $1/done ] && return
+    echo "Installing $1"
+    [ ! -e $1 ] && tar xfz $1.tar.gz
+    cd $1
+    shift
+    ( ${DEST_DIR}/bin/python2.6 setup.py install $* 2>&1 ) 1>> ${LOG_FILE} || do_exit
+    touch done
+    cd ..
+}
+
+function get_enzotools
+{
+    echo "Downloading $1 from yt.enzotools.org"
+    [ ! -e $1 ] && ( wget -nv "http://yt.enzotools.org/dependencies/$1" || do_exit )
+}
+
 ORIG_PWD=`pwd`
 
+LOG_FILE="${DEST_DIR}/yt_install.log"
+
 if [ -z "${DEST_DIR}" ]
 then
     echo "Edit this script, set the DEST_DIR parameter and re-run."
@@ -45,7 +72,6 @@
 
 echo "Installing into ${DEST_DIR}"
 echo "INST_WXPYTHON=${INST_WXPYTHON}"
-echo "INST_IPYTHON=${INST_IPYTHON}"
 
 mkdir -p ${DEST_DIR}/src
 cd ${DEST_DIR}/src
@@ -53,12 +79,18 @@
 # Individual processes
 if [ -z "$HDF5_DIR" ]
 then
-    [ ! -e hdf5-1.6.8.tar.gz ] && wget ftp://ftp.hdfgroup.org/HDF5/current16/src/hdf5-1.6.8.tar.gz
+    echo "Downloading HDF5"
+    [ ! -e hdf5-1.6.8.tar.gz ] && wget -nv ftp://ftp.hdfgroup.org/HDF5/current16/src/hdf5-1.6.8.tar.gz
 fi
 
-[ $INST_ZLIB -eq 1 ] && [ ! -e zlib-1.2.3.tar.bz2 ] && wget http://www.zlib.net/zlib-1.2.3.tar.bz2
-[ ! -e Python-2.5.2.tgz ] && wget http://python.org/ftp/python/2.5.2/Python-2.5.2.tgz
-[ $INST_WXPYTHON -eq 1 ] && [ ! -e wxPython-src-2.8.7.1.tar.bz2 ] && wget http://downloads.sourceforge.net/wxpython/wxPython-src-2.8.7.1.tar.bz2
+[ $INST_ZLIB -eq 1 ] && [ ! -e zlib-1.2.3.tar.bz2 ] && wget -nv http://www.zlib.net/zlib-1.2.3.tar.bz2
+[ ! -e Python-2.6.1.tgz ] && wget -nv http://python.org/ftp/python/2.6.1/Python-2.6.1.tgz
+[ $INST_WXPYTHON -eq 1 ] && [ ! -e wxPython-src-2.8.7.1.tar.bz2 ] && wget -nv http://downloads.sourceforge.net/wxpython/wxPython-src-2.8.7.1.tar.bz2
+
+get_enzotools numpy-1.2.1.tar.gz
+get_enzotools matplotlib-0.98.5.2.tar.gz
+get_enzotools ipython-0.9.1.tar.gz
+get_enzotools tables-2.1.tar.gz
 
 if [ -z "$YT_DIR" ]
 then
@@ -70,9 +102,9 @@
         YT_DIR=`dirname $ORIG_PWD`
     elif [ ! -e yt-trunk-svn ] 
     then
-        svn co http://svn.enzotools.org/yt/trunk/ ./yt-trunk-svn
+        ( svn co http://svn.enzotools.org/yt/trunk/ ./yt-trunk-svn 2>&1 ) 1>> ${LOG_FILE}
         YT_DIR="$PWD/yt-trunk-svn/"
-    elif [ e yt-trunk-svn ] 
+    elif [ -e yt-trunk-svn ] 
     then
         YT_DIR="$PWD/yt-trunk-svn/"
     fi
@@ -83,11 +115,11 @@
 then
     if [ ! -e zlib-1.2.3/done ]
     then
-        [ ! -e zlib-1.2.3 ] && tar xvfj zlib-1.2.3.tar.bz2
-        echo "Doing ZLIB"
+        [ ! -e zlib-1.2.3 ] && tar xfj zlib-1.2.3.tar.bz2
+        echo "Installing ZLIB"
         cd zlib-1.2.3
-        ./configure --shared --prefix=${DEST_DIR}/ || exit 1
-        make install || exit 1
+        ( ./configure --shared --prefix=${DEST_DIR}/ 2>&1 ) 1>> ${LOG_FILE} || do_exit
+        ( make install 2>&1 ) 1>> ${LOG_FILE} || do_exit
         touch done
         cd ..
     fi
@@ -100,62 +132,67 @@
 then
     if [ ! -e hdf5-1.6.8/done ]
     then
-        [ ! -e hdf5-1.6.8 ] && tar xvfz hdf5-1.6.8.tar.gz
-        echo "Doing HDF5"
+        [ ! -e hdf5-1.6.8 ] && tar xfz hdf5-1.6.8.tar.gz
+        echo "Installing HDF5"
         cd hdf5-1.6.8
-        ./configure --prefix=${DEST_DIR}/ || exit 1
-        make install || exit 1
+        ( ./configure --prefix=${DEST_DIR}/ --enable-shared 2>&1 ) 1>> ${LOG_FILE} || do_exit
+        ( make install 2>&1 ) 1>> ${LOG_FILE} || do_exit
         touch done
         cd ..
     fi
     HDF5_DIR=${DEST_DIR}
 fi
 
-if [ ! -e Python-2.5.2/done ]
+if [ ! -e Python-2.6.1/done ]
 then
-    echo "Doing Python"
-    [ ! -e Python-2.5.2 ] && tar xvfz Python-2.5.2.tgz
-    cd Python-2.5.2
-    ./configure --prefix=${DEST_DIR}/ || exit 1
+    echo "Installing Python"
+    [ ! -e Python-2.6.1 ] && tar xfz Python-2.6.1.tgz
+    cd Python-2.6.1
+    ( ./configure --prefix=${DEST_DIR}/ 2>&1 ) 1>> ${LOG_FILE} || do_exit
 
-    make || exit 1
-    make install || exit 1
+    ( make 2>&1 ) 1>> ${LOG_FILE} || do_exit
+    ( make install 2>&1 ) 1>> ${LOG_FILE} || do_exit
     touch done
     cd ..
 fi
 
-export PYTHONPATH=${DEST_DIR}/lib/python2.5/site-packages/
+export PYTHONPATH=${DEST_DIR}/lib/python2.6/site-packages/
 
 if [ $INST_WXPYTHON -eq 1 ] && [ ! -e wxPython-src-2.8.7.1/done ]
 then
-    echo "Doing wxPython"
-    [ ! -e wxPython-src-2.8.7.1 ] && tar xvfj wxPython-src-2.8.7.1.tar.bz2
+    echo "Installing wxPython"
+    [ ! -e wxPython-src-2.8.7.1 ] && tar xfj wxPython-src-2.8.7.1.tar.bz2
     cd wxPython-src-2.8.7.1
 
-    ./configure --prefix=${DEST_DIR}/ --with-opengl || exit 1
-    make install || exit 1
+    ( ./configure --prefix=${DEST_DIR}/ --with-opengl 2>&1 ) 1>> ${LOG_FILE} || do_exit
+    ( make install 2>&1 ) 1>> ${LOG_FILE} || do_exit
     cd contrib
-    make install || exit 1
+    ( make install 2>&1 ) 1>> ${LOG_FILE} || do_exit
     cd ../wxPython/
-    ${DEST_DIR}/bin/python2.5 setup.py WX_CONFIG=${DEST_DIR}/bin/wx-config install || exit 1
+    ( ${DEST_DIR}/bin/python2.6 setup.py WX_CONFIG=${DEST_DIR}/bin/wx-config install 2>&1 ) 1>> ${LOG_FILE} || do_exit
 
     touch ../done
     cd ../..
 fi
 
-echo "Installing numpy, matplotlib, ipython"
 export LDFLAGS="${LDFLAGS} -L${DEST_DIR}/lib/ -L${DEST_DIR}/lib64/"
-${DEST_DIR}/bin/python2.5 ${YT_DIR}/ez_setup.py
-${DEST_DIR}/bin/easy_install numpy      || exit 1
-${DEST_DIR}/bin/easy_install "matplotlib==0.98.3" || exit 1
-${DEST_DIR}/bin/easy_install ipython    || exit 1
+
+echo "Installing setuptools"
+( ${DEST_DIR}/bin/python2.6 ${YT_DIR}/ez_setup.py 2>&1 ) 1>> ${LOG_FILE} || do_exit
+
+do_setup_py numpy-1.2.1
+do_setup_py matplotlib-0.98.5.2
+do_setup_py ipython-0.9.1
+do_setup_py tables-2.1 --hdf5=${HDF5_DIR}
 
 echo "Doing yt update"
 MY_PWD=`pwd`
 cd $YT_DIR
-svn up
+( svn up 2>&1 ) 1>> ${LOG_FILE}
+
+echo "Installing yt"
 echo $HDF5_DIR > hdf5.cfg
-${DEST_DIR}/bin/python2.5 setup.py develop || exit 1
+( ${DEST_DIR}/bin/python2.6 setup.py develop 2>&1 ) 1>> ${LOG_FILE} || do_exit
 touch done
 cd $MY_PWD
 
@@ -165,23 +202,34 @@
 echo
 echo "yt is now installed in $DEST_DIR ."
 echo "To run from this new installation, the a few variables need to be"
-
 echo "prepended with the following information:"
 echo
 echo "PATH            => $DEST_DIR/bin/"
-echo "PYTHONPATH      => $DEST_DIR/lib/python2.5/site-packages/"
+echo "PYTHONPATH      => $DEST_DIR/lib/python2.6/site-packages/"
 echo "LD_LIBRARY_PATH => $DEST_DIR/lib/"
-
 echo
 echo "For interactive data analysis and visualization, we recommend running"
 echo "the IPython interface, which will become more fully featured with time:"
 echo
 echo "$DEST_DIR/bin/iyt"
 echo
+echo "For command line analysis run:"
+echo
+echo "$DEST_DIR/bin/yt"
+echo
 echo "Note of interest: this installation will use the directory"
 echo "$YT_DIR"
 echo "as the source for all the YT code.  This means you probably shouldn't"
 echo "delete it, but on the plus side, any changes you make there are"
 echo "automatically propagated."
 echo
+echo "For support, see one of the following websites:"
+echo
+echo "    http://yt.enzotools.org/wiki/"
+echo "    http://yt.enzotools.org/doc/"
+echo
+echo "Or join the mailing list:"
+echo 
+echo "    http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org"
+echo
 echo "========================================================================"



More information about the yt-svn mailing list