Software

How to install software

ILC software install on Scientific Linux 5.7

The instruction to install software for ILC detector studies are described below, assuming a user using Scientific Linux 5.7, 64 bit.  Please note that the instruction below is not complete. Please use them with caution.  Please notte that some commands is not applicable to 32 bit system.(i386)

As a summary following packages have to be installed.

Packages Install location
gfortran 4.6.2 ( because Whizard wants the latest gfortran ). /opt/gcc-4.6.2
Utilities such as cernlib, QT, CMake, CLHEP, ROOT, ...   /proj/soft/gcc462/ext
ilcsoft /proj/soft/gcc462/ilcsoft/v01-13-01
SimTools /proj/soft/gcc462/Release/1.48
GRID UI /opt/

Don't forget to set LD_LIBRARY_PATH and PATH variables to point gcc lib and bin directory after gcc and gfortran are installed.


gfortran

Whizard event generator requires the latest gfortran. Thus the lates gcc and gfortran are installed and used in the following built.  Packages installed are, gmp, mpfr, mpc, gcc. The working directory is ~/utils. Gfortran wiki page is found at  http://gcc.gnu.org/wiki/GFortran

Prior to the installation, do

# yum install expect, dejagnu, tcl

as a super user.  Then do following command.

$ export CFLAGS=" -fPIC -m64 "
$ export LD_LIBRARY_PATH=/opt/gcc-4.6.2

$ wget ftp://ftp.gmplib.org/pub/gmp-5.0.2/gmp-5.0.2.tar.bz2
$ tar jxvf ../orig/gmp-5.0.2.tar.bz2
$ ./configure --prefix=/opt/gcc-4.6.2
$ make
$ make check
$ make install ( as a user user )

$ wget http://www.mpfr.org/mpfr-current/mpfr-3.1.0.tar.gz
$ cd ../
$ mkdir mpfr
$ cd mpfr
$ tar zxvf ../orig/mpfr-3.1.0.tar.gz
$ cd mpfr-3.1.0
$ ./configure --prefix=/opt/gcc-4.6.2 --with-gmp=/opt/gcc-4.6.2
$ make
$ make check
$ make install ( as a super user )

$ wget http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz
$ cd ../
$ mkdir mpc
$ cd mpc
$  tar zxvf ../orig/mpc-0.9.tar.gz
$ cd mpc-0.9
$ ./configure --prefix=/opt/gcc-4.6.2 --with-gmp=/opt/gcc-4.6.2 \
  --with-mpfr=/opt/gcc-4.6.2
$ make
$ make check
$ make install ( as a user user )

$ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.6.2/gcc-4.6.2.tar.gz
$ cd ../gcc
$ tar zxvf ../orig/gcc-4.6.2.tar.gz
$ mkdir build-4.6.2
$ cd build-4.6.2
$  /home/miyamoto/soft/utils/gcc-4.6.2/configure --enable-languages=c,c++,fortran --prefix=/opt/gcc-4.6.2 \
>  --with-mpc=/opt/gcc-4.6.2 --with-mpfr=/opt/gcc-4.6.2 --with-gmp=/opt/gcc-4.6.2
#  Path to configure must be full-path
$ make  -j 16  ( instead of 16, use the number of cores of your system)
$ make check
$ make install ( as a super user )

# Test gcc
# See http://gcc.gnu.org/install/test.html
$ export TCL_LIBRARY=/usr/share/tcl8.4
$ export DEJAGNULIBS=/usr/share/dejagnu
$ make -k check

For easy set up of gcc-4.6.2 environment,

$ cat <<EOF > /opt/gcc-4.6.2/setup-gcc462.sh
export LD_LIBRARY_PATH=/opt/gcc-4.6.2/lib64:/opt/gcc-4.6.2/lib:${LD_LIBRARY_PATH}
export PATH=/opt/gcc-4.6.2/bin:${PATH}
EOF


Utilities


CLHEP

$ . /proj/soft/gcc462/setup-gcc462.sh
$ cd ~/soft/ext/CLHEP
$ ( cd orig && wget http:// somewhare ... )
$ version=2.1.0.1
$ prefixdir=/proj/soft/gcc462/ext/CLHEP/${version}
$ srctgz=../orig/clhep-${version}.tgz
$ tar zxvf ${srctgz}
$ cd ${version}/CLHEP
$ ./configure --prefix=${prefixdir}
$ make -j 8
$ make check
# make install  ( as a super user )

CERNLIB

64-bit version of CERNLIB-2005 were installed. The installed script (install_whizard-64)include patch for 64 bit build were prepared by Mikael Berrgren and its copy is available in http://www-jlc-in.kek.jp/~miyamoto/CDS/tools/files-for-whizard-64-am.tar.gz.  The script installs the package at current diretory, thus cernlib is installed directory to /proj/soft/gcc462/ext.  The instruction is as follows.

$ cd /proj/soft/gcc462/ext/cernlib
$ wget  http://www-jlc-in.kek.jp/~miyamoto/CDS/tools/files-for-whizard-64-am.tar.gz
$ tar zxf files-for-whizard-64-am.tar.gz
$ . install_whizard-64
$ define_cernlib install
$ ln -s cernlib_64/2005 2005
$ cd cernlib_64
$ tar zxf include.tar.gz

CMake

ilcsoft requires the latter version of CMake. The instruction is

$ cd ~/soft/ext/CMake/orig
$ wget  http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz
$ cd ~/soft/ext/CMake/
$ . /proj/soft/gcc462/setup-gc462.sh
$ version=2.8.7
$ destdir=/proj/soft/gcc462/ext/CMake/${version}
$ tar zxvf orig/cmake-${version}.tar.gz
$ cd cmake-${version}
$ ./configure --prefix=${destdir}
$ make -j 8
# make install ( as a super user )

GSL

gsl(gnu scientific library) is required to build ROOT library with mathmore option. It is also required by ilcsoft. To install

$ cd ~/soft/ext/gsl/orig
$ wget http://...../gsl-1.15.tar.gz
$ cd ~/soft/ext/gsl/
$ version=1.15
$ libdir=/proj/soft/gcc462/ext
$ prefixdir=${libdir}/gsl/${version}
$ makenum=8
$ tar zxf orig/gsl-${version}.tar.gz
$ cd gsl-${version}
$ ./configure --prefix=${prefixdir}
$ make -j ${makenum}
# make install ( as a super user )

QT

qt is a library for window display. it is used by geant4 and ilcsoft (OED ? ).  To install,

$ cd ~/soft/ext/QT/orig
$ wget http://....somewhere.../qt-everywhere-opensource-src-4.8.0.tar.gz
$ cd ~/soft/ext/QT/
$ tar zxf orig/qt-everywhere-opensource-src-4.8.0.tar.gz
$ version=4.8.0
$ libdir=/proj/soft/gcc462/ext
$ prefixdir=${libdir}/QT/${version}
$ cd qt-everywhere-opensource-src-${version}
$ ./configure -prefix ${prefixdir}
==> reply to prompt and proper licence term, after end of configuration,
$ make -j 16
# make install ( as a super user )

Pythia

pythia is used by Whizard and root.  For ILC DBD study, pythia version, 6.4.22 was selected.  A script is prepared by Mikael to build library compatible with whizard and root. to install,

$ cd /proj/soft/gcc462/ext/pythia
$ wget http://www-jlc.kek.jp/~miyamoto/CDS/tools/pythia-build-tools.tar.gz
$ tar zxf pythia-build-tools.tar.gz
$ version=6.4.22
$ ver2=$(echo $version | sed -e s/\\./_/ | tr -d ".")
$ ver3=$(echo $ver2 | tr -d "_" )$ local here
$ here=`pwd`
$ bash ./tools/build_pythia6.sh ${version} gfortran
$ cd v${ver2}/src
$ cp ${here}/tools/upinit.f .
$ patch -p0 < ${here}/tools/pydecy.f-patch
$ make
$ cd ../lib
$ mv liblund.a ${here}/../cernlib/2005/lib/libpythia${ver3}.a

ROOT

$ cd ~/soft/ext/root/orig
$ wget http://..... some where .../root_v5.28.00h.source.tar.gz
$ cd ..
$ tar zxf orig/root_v5.28.00h.source.tar.gz
$ version=5.28.00h
$ extdir=/proj/soft/gcc462/ext
$ pythialibdir=${extdir}/pythia/6.4.22/lib
$ prefixdir=${extdir}/root/${version}
$ local here
$ here=`pwd`
$ mv root ${version}
$ cd ${version}
$ ./configure linuxx8664gcc \
        --prefix=${prefixdir} \
        --enable-gsl-shared \
        --incdir=${prefixdir}/include \
        --libdir=${prefixdir}/lib \
        --with-gsl-incdir=${extdir}/gsl/1.15/include \
        --with-gsl-libdir=${extdir}/gsl/1.15/lib \
        --enable-minuit2 --enable-gdml --enable-mathmore \
        --enable-python --enable-pythia6 \
        --with-pythia6-libdir=${pythialibdir}
$ make -j 16
# make install ( as a super user )
 

stdhep

stdhep is a library for generator files. Patch file is prepared to build library on 64 bit system with fPIC option.

$ version=5-06-01
$ prefix=/proj/soft/gcc462/ext/stdhep
$ mkdir -p ${prefix}
$ pushd ${prefix}
$ wget http://cepa.fnal.gov/dist/stdhep/stdhep-${version}.tar.gz
$ tar -zxf stdhep-${version}.tar.gz
$ wget http://www-jlc.kek.jp/~miyamoto/CDS/tools/stdhep-${version}.diff
$ patchfile=stdhep-${version}.diff
$ cd stdhep-${version}
$ patch -b -p 1 < ../${patchfile}
$ gmake all
$ cd ${prefix}
$ vers=$( echo ${version} | sed -e "s/-/\./g" )
$ ln -sf stdhep-${version} ${vers}
$ rm -fv stdhep-${version}.tar.gz

ocaml

ocaml is used by whizard to build fortran program to calculate scattering amplitude.

$ cd ~/soft/ext/ocaml/orig
$ wget http://caml.inria.fr/pub/distrib/ocaml-3.12/ocaml-3.12.1.tar.gz
$ version=3.12.1
$ libdir=/proj/soft/gcc462/ext
$ prefixdir=${libdir}/ocaml/${version}
$ tar zxf orig/ocaml-${version}.tar.gz
$ cd ocaml-${version}
$ ./configure -prefix ${prefixdir}

$

# According to Mikael,
# ( sometimes the make gets a 'Text file busy' error, this is why
#   it is re-run.  boot/ocamlrun gives an error, but makes the
#   file available in the the following step)

$ echo "`date` make world.opt 1st"
$ make world.opt
$ sleep 1
$ boot/ocamlrun
$ boot/ocamlrun
$ boot/ocamlrun
$ sleep 1

$ echo "`date` make world.opt 2nd"
$ make world.opt
$ sleep 1
$ boot/ocamlrun
$ boot/ocamlrun
$ boot/ocamlrun
$ sleep 1

$ echo "`date` make 1nstall 1st"
$ make install
$ sleep 1
$ boot/ocamlrun
$ boot/ocamlrun
$ boot/ocamlrun
$ sleep 1

$ echo "`date` make install 2nd"
#  make install  ( as a super user )

tauola

A script to build tauola will be found at http://www-jlc.kek.jp/~miyamoto/CDS/tools/tauola-buildcmd.sh  To install,

$ wget   http://www-jlc.kek.jp/~miyamoto/CDS/tools/tauola-buildcmd.sh
$ chmod +x tauola-buildcmd.sh
$ ./tauola-buildcmd.sh /proj/soft/gcc462/ext/tauola

A directory to install tauola can be specified as the first argument of tauola-buildcmd.sh script.

geant4

Get source code and data from http://geant4.cern.ch/, unpack and install.  The procedure is

$ cd /proj/soft/gcc462/ext/geant4
$ tar zxf [somewhere]/geant4.9.4.p03.tar.gz
$ cd geant4.9.p03
$ ( mkdir data && unpack g4 data files )
$ ./Configure -build

reply to prompt properly.  Example of geant4 configuration log will be found in geant4.9.4.p03-install-log.txt  Make will start after configuration. When completed, do

$ ./Configure -install
This command will install library and include file in proper location.


ilcSoft install

ilcSoft are installed using a script, ilcsoft-install. The documentation will be found at http://ilcsoft.desy.de/portal/software_packages/ilcinstall/

Download ilcinstall

To get start, first down load ilcinstall as follows.

$ svn co https://svnsrv.desy.de/public/ilctools/ilcinstall/tags/v01-13-02 ilcinstall

Note to modify "v01-13-02" to a version number of your installation. README file in the ilcinstall directory describes how to use the ilcinstall. Please refer to README for complete help.  A releases directory contains scripts and version number of relevant packages for a particular ilcsoft release. 

Build base packages

If this is first time to install ilcSoft, packages which are not updated frequently could be installed using release-base.cfg.  Example used to install on jlclogin3 are as follows.

Then base packages are installed as follows.

$ ./ilcsoft-install -p release-base.cfg
$ ./ilcsoft-install -i release-base.cfg

First line is does nothing except to check settings of release-base.cfg and release-version-base.py.  It is recommended to do first line before actually install packages by the second line.

 

MySQL libraies at the standard location (/usr) could not use correctly. So, in my installation, I created a symbolic link of them under /proj/soft/gcc462/ext directory as follows.

$ cd /proj/soft/gcc462/ext
$ mkdir mysql && cd mysql
$ ( mkdir lib64 && cd lib64 && ln -s /usr/lib64/mysql . )
$ ln -s lib64 lib
$ ( mkdir include && cd include && ln -s /usr/include/mysql . )
$ ( mkdir bin && cd bin && find /usr/bin -name myxql* -exec -ln -s {} . )

 

Build ilcSoft release 

Again, get the ilcsoft corresponding to the version you need, then prepare release-ilcsoft.cfg and release-versions.py according to your environment then install them by ilcsoft-install script. THe setting used for the installation to jlclogin3 are as follows.


Install GRID glite UI

Following example shows how to install glite 3.2 UI on SL5.7.  The detail information will be found at following links.

Glite UI are installed as follows.  Execute commands as a super user

get glite-UI.repo
$  wget http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.2/glite-UI.repo

getCA
$ wget http://repository.egi.eu/sw/production/cas/1/current/repo-files/EGI-trustanchors.repo
references will be found at  https://wiki.egi.eu/wiki/EGI_IGTF_Release
According to the guide, how to install EGI-trustanchors.repo depends on previous activity. If this is first time to install EGI-trustanchors.repo, do as follows.

$ yum install ca-policy-egi-core
--> this will download and install CA of many sites.

Then, update dag as follows.  In /etc/yum.d directory,

$ mv dag.repo  dag.repo-backup
$ vi dag.repo

[main]

[dag]

name=DAG (http://dag.wieers.com) additional RPMS repository

baseurl=http://linuxsoft.cern.ch/dag/redhat/el5/en/$basearch/dag

gpgkey=http://linuxsoft.cern.ch/cern/slc5X/$basearch/RPM-GPG-KEYs/RPM-GPG-KEY-dag

gpgcheck=1

enabled=1

 

$ yum update

$ yum groupinstall glite-UI

 

Add following line in /etc/hosts

ip-address   yourhosts.domain.domain   yourhosts

( enter ip address and host name of your hosts )

 

Then do yaim as follows

$ cd /opt

$ /opt/glite/yaim/bin/yaim --verify --siteinfo site-info.def  --nodetype UI
$ . /opt/external/etc/profile.d/grid-env.sh

$ /usr/sbin/fetch-crl -l /etc/grid-security/certificates -o /etc/grid-security/certificates

$ ( cd /opt/external && mkdir usr && cd usr && ln -s /usr/sbin . )

$ ( cd /opt/external/etc/grid-security && ln -s /etc/grid-security/certificates . )

$ /opt/glite/yaim/bin/yaim --configure --siteinfo site-info.def --nodetype UI

$ /opt/glite/yaim/bin/yaim --configure --siteinfo site-info.def --nodetype UI_TAR

 

  ( yaim command with --nodetype UI may be omotted )

 

site-info.def defines your UI site information.

 

That's it. glite UI is ready to use.

 

Undefined

Software Group

Software Group

ILDEvent.png

e+e- -->μ+μ-H @250 GeV (μ+-, and Higgs are produced by e+e- collision)

 

English

ソフトウェア・グループ

ソフトウェアーグループ

 

Japanese

How to Build and Run KalTest Example in Xcode

1) Create a Xcode project using "cmake"

 

English

Xcode で KalTest の例題("hybrid")を走らせる

Steve Aplin が KEK 滞在中。彼は、子供の頃初めてさわったコンピューターが Mac  だったという Mac ファンだ。彼から Xcode の使い方を習った。"cmake" をなぜ使いたくなるのか、始めて理解した。

Japanese

ソフトウェアー

ソフトウェアーグループ

ILDEvent.png

e+e- -->μ+μ-H @250 GeV ( 衝突によりヒッグス粒子と正負荷電のミュー粒子が生成)

はじめに ニュース 画像など ソフトライブラリ
イベントジェネレータ ACFASIM シミュレーションと解析 GRID
使い方解説   計算機環境 昔のページ

 

 

 

 

Subgroup:

Subscribe to RSS - Software