Building gLExec and its gLite dependencies from SVN source
From PDP/Grid Wiki
Revision as of 11:39, 3 June 2010 by Msalle@nikhef.nl (talk | contribs)
Introduction
This page explains the steps needed to build gLite tools, in particular gLExec and its LCMAPS and LCAS dependencies directly from the source in CVS.
Prerequisites: Globus and global settings
At this point we depend on a (binary) globus installation. For the following OSes it can be found in the Etics repositories:
- RedHat-4 32 bits (also for SL(C)-4 and Centos-4): globus-4.0.3-VDT-1.6.1-7.tar.gz
- RedHat5 64 bits (also for SL(C)-5 and Centos-5): globus-4.0.7-VDT-1.10.1-1.tar.gz
- OpenSUSE 11 64 bits: globus-4.0.7-VDT-1.10.1-1.tar.gz
- Debian-5 64 bits: globus-4.0.8-VDT-2.0.0-2.tar.gz
Set the following exports:
export globus_flav=gcc32 |
or | export globus_flav=gcc64 |
And additionally, adapted to personal taste:
export source=/tmp/source # Where to download sources export globus=/tmp/build/globus # Where to install globus export glite=/tmp/build/glite # Where to find glite builds export prefix=${glite} # Where to install glite builds export CVSROOT=:pserver:anonymous@glite.cvs.cern.ch:/cvs/glite # anonymous CVS root
Make sure ${source} exists.
Since all these tarballs assume installation in /opt/globus unpack and 'relocate' as follows:
mkdir -p ${globus} && \ cd ${globus} && \ tar -zxf <globus tarball> && \ find -type f -name \*.la|while read file;do sed s+/opt/globus+${globus}+g ${file} > ${file}.new && \ mv -f ${file}.new ${file} done
VOMS API
Dependencies: Globus
cd ${source} cvs co -r glite-security-voms_R_1_9_16_2 org.glite.security.voms cd org.glite.security.voms ./configure --prefix=${prefix} --with-globus-prefix=${globus} --disable-java --with-api-only make && make install
LCMAPS
Dependencies: Globus and #VOMS API
Note: It is important to use the given org.glite.build.common-cpp version!
cd ${source} cvs co org.glite.security.lcmaps cvs co -r glite-build-common-cpp_R_3_2_7_1 org.glite.build.common-cpp cd org.glite.security.lcmaps cp -p ../org.glite.build.common-cpp/m4/{globus,glite,glite_security,lcmaps}.m4 ./project ./bootstrap ./configure --prefix=${prefix} \ --with-glite-location=${glite} \ --with-globus-prefix=${globus} --with-globus-thr-flavor=${globus_flav}pthr --with-globus-nothr-flavor=${globus_flav} make && make install
LCAS
Dependencies: Globus
Note: glite-build-common-cpp is also checked out under #LCMAPS.
cd ${source} cvs co org.glite.security.lcas cvs co -r glite-build-common-cpp_R_3_2_7_1 org.glite.build.common-cpp cd org.glite.security.lcas cp -p ../org.glite.build.common-cpp/m4/{glite,globus,lcmaps}.m4 ./project ./bootstrap && \ ./configure --prefix=${prefix} \ --with-glite-location=${glite} \ --with-globus-prefix=${globus} --with-globus-thr-flavor=${globus_flav}pthr --with-globus-nothr-flavor=${globus_flav} make && make install