Development/Production versions Software avaliable via AFS

From: Christian Holm Christensen (cholm@hehi03.nbi.dk)
Date: Sun Jul 01 2001 - 09:29:20 EDT

  • Next message: Flemming Videbaek: "CRS nodes"

    Hi all, 
    
    [Ok, pretty long mail.  Please read the beginning. though]
    
    I've build and installed all pieces of software used by us on our AFS
    area.  It's only done for GNU/Linux (AFS sysname i386_redhat61). Most
    are in the production ("pro") part, but a few, not deemed quite stable
    yet, are in the development ("new") area.  Here's a breakdown: 
    
      Package      | Version | Area | Notes
      -------------+---------+------+------------------------------------
      GNU M4       |     1.4 | pro  |
      GNU Awk      |   3.0.6 | pro  |
      GNU Make     |    3.77 | pro  |
      GNU Autoconf |    2.13 | pro  |
      GNU Automake |     1.4 | pro  |
      GNU Libtool  |   1.3.5 | pro  |
      MySQL        | 3.23.38 | pro  | Clients programs and libraries only 
      BRAG         |   1.0.0 | pro  |
      BREG         |   1.0.0 | pro  |
      ROOT         | 3.01/05 | new  | Only extra options: STAR and MySQL
      BRAT         |   2.0.2 | new  | 
      BROP         |   1.0.0 | new  | 
      -------------+---------+------+------------------------------------
    
    To use any of this software, you _must_ have AFS installed on your
    machine (true for all pii's, rcas', rmine's, rcf, and so on).  If you
    don't why not get OpenAFS from IBM at:  
    
      http://www.openafs.org/
    
    Pre-build binaries for many system exist.  Check out the "Latest
    Release" link from the above page.  Note that you only need to get the
    client package and perhaps the kernel module package if you have a
    custom build Linux kernel.  If you want, you can also get the
    development package, so that you may compile ROOT with AFS support. 
    
    To use the production software, put 
    
       /afs/rhic/opt/brahms/pro 
    
    in your PATH environment variable. 
    
    To use the development software, put 
    
       /afs/rhic/opt/brahms/new 
    
    in your PATH environment variable, _before_ the "pro" directory.  
    
    Note, that all you need to set is your PATH environment variable -
    nothing more, nothing less.  In other words, the environment variables 
    
      ROOTSYS
      BRATSYS
      BRATHOME
      LD_LIBRARY_PATH 
    
    should not be set.  Ofcourse you may have set LD_LIBRARY_PATH to
    something, due to some other package you use, but then you defently
    shouldn't have $ROOTSYS/lib:$BRATSYS/lib/$BRAHMS_ARCH in your path.
    Note also, that the variable 
    
      BRAHMS_ARCH 
    
    is not really used by any of the above software.  To put it another
    way, you can use the BRAHMS software by having a TCSH login file like 
    
      #
      # Minimal ~/.login file to use BRAHMS software 
      #
      setenv PATH /afs/rhic/opt/brahms/new:/afs/rhic/opt/brahms/pro:${PATH}
    
      #
      # EOF
      #
    
    or a BASH profile file like
    
      #
      # Minimal ~/.profile file to use BRAHMS software 
      #
      export PATH=/afs/rhic/opt/brahms/new:/afs/rhic/opt/brahms/pro:${PATH}
    
      #
      # EOF
      #
    
    [End of the beginning. Skim through the rest if you like]
    
    For those intrested in setting up a binary mirror on thier local
    machine(s), here's what I did: 
    
    * Gnu Tools:
      
      - Got GNU tools from GNU mirror FTP (see
        http://www.gnu.org/server/list-mirrors.html) site in tar-balls 
    
         gnu/autoconf/autoconf-2.13.tar.gz 
         gnu/automake/automake-1.4.tar.gz
         gnu/gawk/gawk-3.0.6-ps.tar.gz 
         gnu/libtool/libtool-1.3.5.tar.gz	
         gnu/m4/m4-1.4.tar.gz
         gnu/make/make-3.77.tar.gz 
    
      - Included /afs/rhic/opt/brahms/pro in PATH (important). 
    
      - Unpacked, build and installed the GNU software in the following
        order (this is important): 
    
            M4  Gawk  Make  Autoconf  Automake  Libtool 
    
        All packages was configured with 
    
           ./configure --prefix=/afs/rhic/opt/brahms/pro 
      
        And then build with 
    
           make 
           make install 
    
    * Mysql:
    
      - Got MySQL source tar ball from MySQL FTP mirror
        (http://www.mysql.com/downloads/mirrors.html)  site in tar-ball 
    
          DownLoads/MySQL-3.23/mysql-3.23.38.tar.gz
    
      - Configured the MySQL source tree with 
    
          ./configure --prefix=/afs/rhic/opt/brahms/pro \
    		  --enable-thread-safe-client	    \
    		  --without-server --without-docs   \
    		  --without-bench		    \
    		  --with-comment		    \
    		  --without-debug
    
      - Build and installed: 
    
           make 
           make install 
    
    * BRAG:
    
      - Got BRAG from CVS area:
    
          cvs export -r BRAG-1.0.0 -d brag-1.0.0 brag 
          cd brag-1.0.0
        
      - Make autotool files and configured the source tree of BRAG: 
    
          ./autogen --prefix=/afs/rhic/opt/brahms/pro 
         
      - Build and installed BRAG: 
    
          make install 
       
    * BREG:
     
      - Got BREG from CVS area:
    
          cvs export -r BREG-1.0.0 -d brag-1.0.0 breg 
          cd breg-1.0.0
    
      - Fixed a problem with duplicate AC_BREG macroes (I'll try fix this
        in the CVS instead)
    
          rm */config/breg.m4 
          
      - Make autotool files and configured the source tree of BREG: 
    
          ./autogen --prefix=/afs/rhic/opt/brahms/pro 
         
      - Build and installed BREG: 
    
          make install 
       
    * ROOT:
     
      - Got ROOT sources from CVS area 
    
          cvs -d :pserver:cvs@root.cern.ch:/user/cvs login 
          Password: cvs
          cvs -d :pserver:cvs@root.cern.ch:/user/cvs export -r v3-01-05 \
    	  -d root-3.01.05 root 
          
      - Configured ROOT source tree with: 
    
          ./configure linuxegcs \
    		  --prefix=/afs/rhic/opt/brahms/new \
    		  --etcdir=/afs/rhic/opt/brahms/new/etc/root \
    		  --libdir=/afs/rhic/opt/brahms/new/lib	     \
    		  --with-mysql-libdir=/afs/rhic/opt/brahms/pro/lib/mysql \
    		  --with-mysql-incdir=/afs/rhic/opt/brahms/pro/include/mysql \
    		  --enable-soversion \
    		  --enable-rpath \
    		  --enable-star
    
      - Build and installed ROOT 
    
          make 
          make install 
    
    * BRAT:
    
      - Got BRAT sources from CVS 
    
          cvs export -r BRAT-2-0-2 -d brat-2.0.2 brat 
          cd brat-2.0.2 
    
      - Put /afs/rhic/opt/brahms/new in PATH (important) 
    
      - Make autotool files and configured BRAT source tree with 
    
          ./autogen --prefix=/afs/rhic/opt/brahms/new 
        
      - Build and installed BRAT
    
          make install 
    
    * BROP:
    
      - Got BROP sources from CVS     
    
          cvs export -r BROP-1-0-0 -d brop-1.0.0 brop 
          cd brop-1.0.0 
    
      - Make autotool files and configured BROP source tree with  
    
          ./autogen --prefix=/afs/rhic/opt/brahms/new 
        
      - Build and installed BROP 
    
          make install 
    
    
    As you can see, this is pretty uniform way of build everything we
    need.  
    
    You should ofcourse replace /afs/rhic/opt/brahms with something more
    appropiate for your system.  I suggest you get your SysOp to make a
    directory like /opt/brahms, /usr/local/brahms or something, and make
    that directory write-able for some account on your system, and then
    install everything there.  If your SysOp's middle name is BOFH
    (Bastard Operator From Hell), you can also have some designated
    account install everything in it's home directory (need a large disk
    quota though).  Please note that you need quite a lot of free space on
    the disk you install on, and also quite a lot of free space on the
    disk you put the sources in. Approx numbers are 
    
      * For the source trees ~450MB. This is actually quite a lot. A
        partial break down is (approx numbers) 
    
           ROOT       88 MB 
           BRAT      128 MB 
           BRAG       15 MB (due to static CERNLIB libraries) 
           BREG       56 MB (due to static CERNLIB libraries) 
           BROP       42 MB
           MySQL      65 MB 
           GNU Tools  20 MB 
    
       * For the installed software, you need ~150MB 
    
    I actually suggest keeping the source code around (though you may want
    to do a "make clean" after installation to save some disk space),
    since all packages provide an "uninstall" target so that you may
    easily uninstall any package.  Note, only ROOT's CVS head has the
    uninstall target (in all modisty added by me :-). 
    
    If your system already has GNU Autotools (autoconf, automake and
    libtool) as well as GNU Awk and GNU Make installed, you don't need to
    install the GNU packages, and you should not delete the files
    "brag-1.0.0/*/config/breg.m4".    
    
    If your system already have a fairly new MySQL client library +
    headers installed, you can skip that step too.  Note, that you may
    want to setup a local server if you want to play around with the
    database classes; please refer to the proper packages and the
    MySQL documentation. 
    
    Also, you'd probably like to compile ROOT with at least TTF and GL 
    support on your local system, as this will give you much enhanced
    graphics output.  Please refer to root-3.01.05/README/INSTALL.  The
    ROOT version installed on /afs/rhic/opt/brahms/new will not be build
    with these extra features, since it's mainly intended for batch
    processing.  We may want to include TTF support if people will also
    use that ROOT for graphics output. 
    
    Yours, 
    
    Christian  -----------------------------------------------------------
    Holm Christensen                             Phone:  (+45) 35 35 96 91 
      Sankt Hansgade 23, 1. th.                  Office: (+45) 353  25 305 
      DK-2200 Copenhagen N                       Web:    www.nbi.dk/~cholm    
      Denmark                                    Email:       cholm@nbi.dk
    



    This archive was generated by hypermail 2b30 : Sun Jul 01 2001 - 09:29:52 EDT