Difference between revisions of "Building gLExec and its gLite dependencies from SVN source"

From PDP/Grid Wiki
Jump to navigationJump to search
 
Line 20: Line 20:
 
  export glite=/tmp/build/glite  # Where to find glite builds
 
  export glite=/tmp/build/glite  # Where to find glite builds
 
  export prefix=${glite}          # Where to install 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 <tt>${source}</tt> exists.
 
Make sure <tt>${source}</tt> exists.
  
Line 30: Line 31:
 
         mv -f ${file}.new ${file}
 
         mv -f ${file}.new ${file}
 
  done
 
  done
 +
 +
== VOMS API ==
 +
Dependencies: [[Prerequisites: Globus and global settings|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: [[Prerequisites: Globus and global settings|Globus]] and [[VOMS API]]
 +
 +
''Note'': It is important to use the given <tt>org.glite.build.common-cpp</tt> version!
 +
 +
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

Revision as of 13:29, 3 June 2010

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:

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!

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