Difference between revisions of "Online release"

From GlueXWiki
Jump to: navigation, search
m
m
Line 39: Line 39:
  
  
5.  Set path to point to gcc 4.8.0 (or whatever compiler you want):
+
5.  Set path to point to gcc 4.8.0 (or whatever compiler you want) and set LD_LIBRARY_PATH accordingly:
  
 
  $ setenv PATH /apps/gcc/4.8.0/bin:"$PATH"
 
  $ setenv PATH /apps/gcc/4.8.0/bin:"$PATH"
 
 
6. Set LD_LIBRARY_PATH for this compiler:
 
 
 
  $ setenv LD_LIBRARY_PATH /apps/gcc/4.8.0/lib64:/apps/gcc/4.8.0/lib:"$LD_LIBRARY_PATH"
 
  $ setenv LD_LIBRARY_PATH /apps/gcc/4.8.0/lib64:/apps/gcc/4.8.0/lib:"$LD_LIBRARY_PATH"
  
  
7.  Set PYTHON path to point to build scripts previously checked out (later these scripts will be released into another area, but for now assume they don't exist):
+
6.  Set PYTHON and PERL paths to point to build scripts previously checked out (later these scripts will be released into another area, but for now assume they don't exist):
  
 
  $ setenv PYTHONPATH /gluex/builds/theRelease/packages/buildScripts/scripts  
 
  $ setenv PYTHONPATH /gluex/builds/theRelease/packages/buildScripts/scripts  
 
 
8.  Set PERL path to point to build scripts, also will be released later:
 
 
 
  $ setenv PERL5LIB /gluex/builds/theRelease/packages/buildScripts/scripts
 
  $ setenv PERL5LIB /gluex/builds/theRelease/packages/buildScripts/scripts
  
  
9.  Set environment variables needed for the build (note that eventually a system script will take care of this step):
+
7.  Set package environment variables needed for the build (note that eventually a system script will take care of this step):
  
 
  $ setenv CMSG /gluex/coda_install-dir/Linux-x86_64
 
  $ setenv CMSG /gluex/coda_install-dir/Linux-x86_64
Line 65: Line 57:
  
  
10.  Build and install everything (except Java, see below):
+
8.  Build and install everything (except Java, see below):
  
 
  $ scons  
 
  $ scons  
Line 71: Line 63:
  
  
11.  Currently Java code must be built separately, until this is fixed do the following:
+
9.  Currently Java code must be built separately, until this is fixed do the following:
  
 
  $ scons java
 
  $ scons java
 
  $ scons install INSTALL_DIR=/gluex/builds/theRelease
 
  $ scons install INSTALL_DIR=/gluex/builds/theRelease

Revision as of 16:42, 15 May 2013

How To Make an Online Release with SCONS

Introduction

Official online releases must be made from the hdsys account. You can make a release in your own area by following the instructions below, with some obvious modifications.

Eventually much of this will be automated.


1. Log into the hdsys account on the Hall D online computing cluster. If you don't know how to do this then you should not be making official releases!


2. Go to the official release area, create a new release directory structure:

$ cd /gluex/builds
$ mkdir theRelease
 
$ cd theRelease
$ mkdir packages
 
$ cd packages


3. Check out the buildScripts package and create top-level SConstruct file:

$ svn co https://halldsvn.jlab.org/repos/trunk/online/packages/buildScripts
$ cp buildScripts/scripts/SConstruct_for_package_dir SConstruct


4. Check out other packages:

$ svn co https://halldsvn.jlab.org/repos/trunk/online/packages/somePackage
... check out more packages if desired ...
$ ls 
somePackage/ buildSCripts/  SConstruct


5. Set path to point to gcc 4.8.0 (or whatever compiler you want) and set LD_LIBRARY_PATH accordingly:

$ setenv PATH /apps/gcc/4.8.0/bin:"$PATH"
$ setenv LD_LIBRARY_PATH /apps/gcc/4.8.0/lib64:/apps/gcc/4.8.0/lib:"$LD_LIBRARY_PATH"


6. Set PYTHON and PERL paths to point to build scripts previously checked out (later these scripts will be released into another area, but for now assume they don't exist):

$ setenv PYTHONPATH /gluex/builds/theRelease/packages/buildScripts/scripts 
$ setenv PERL5LIB /gluex/builds/theRelease/packages/buildScripts/scripts


7. Set package environment variables needed for the build (note that eventually a system script will take care of this step):

$ setenv CMSG /gluex/coda_install-dir/Linux-x86_64
(set others as needed, e.g. for EVIO, ET, CODAOBJECT, etc)


8. Build and install everything (except Java, see below):

$ scons 
$ scons install INSTALL_DIR=/gluex/builds/theRelease


9. Currently Java code must be built separately, until this is fixed do the following:

$ scons java
$ scons install INSTALL_DIR=/gluex/builds/theRelease