Difference: BuildWMSOnSL6FromScratchGITWorkarea (9 vs. 10)

Revision 102012-10-11 - AlviseDorigo

Line: 1 to 1

Tutorial on WMS build and debian package creation

This tutorial assumes that you have GIT access to WMS repository https://github.com/MarcoCecchi/org.glite.wms. It will help you to build all the component that you get when cloning the WMS GIT repository without the etics's build automation tools.
Line: 42 to 42
 (it is better if possible to use the ssh access: git clone --progress git@github.com:MarcoCecchi/org.glite.wms.git WMS)

Pre-Requisites for build on Debian and for .deb packaging

Execute (as root) this command:
Execute (as root) the following commands:
sudo apt-get install build-essential autoconf automake autotools-dev dh-make debhelper devscripts fakeroot xutils lintian pbuilder cmake dpkg-dev
apt-get install curl curl http://emisoft.web.cern.ch/emisoft/dist/EMI/2/debian/dists/squeeze/main/binary-amd64/emi-release_2.0.0-1.deb6.1_all.deb -o emi-release_2.0.0-1.deb6.1_all.deb

dpkg -i emi-release_2.0.0-1.deb6.1_all.deb

apt-get install build-essential autoconf automake autotools-dev dh-make debhelper devscripts fakeroot xutils lintian pbuilder cmake dpkg-dev pkg-config

Now an extra EMI software repository is needed to be able to install glite-jobid* packages; as root do the following:

curl http://eticssoft.web.cern.ch/eticssoft/pbuilder/emi-2-deb6-test-x86_64.list -o /etc/apt/sources.list.d/emi-2-deb6-test-x86_64.list
apt-get update
Now you can install some dependencies needed by WMS's build (as root):
apt-get install libglite-jobid-api-c-dev libglite-jobid-api-cpp-dev libglite-jobid2 libclassad0-dev liblog4cpp5-dev libglobus-io-dev libglobus-gss-assist-dev libglobus-ftp-client-dev libglobus-common-dev libboost-regex-dev libboost-filesystem-dev libboost-date-time-dev

Now, some dependencies internal and external do not provice the pkg-config .pc files (this is the case of boost, classad, etc.). As root follow these steps:
curl http://devel12.cnaf.infn.it:7444/pub/emi/packaging/deb/emi-pkgconfig-compat/deb-emi-pkgconfig-compat-head -o deb-emi-pkgconfig-compat-head

chmod +x deb-emi-pkgconfig-compat-head
dpkg -i BINARIES/emi-pkgconfig-compat_1.0.1-1_all.deb
At this point your debian box is ready to build WMS software, logout and login as "normal" user.

Build (on both SL6 and Debian6_2)

These are the steps to follow (at the moment only the org.glite.wms.common component is covered):
cd $HOME
git clone git://github.com/italiangrid/classad-utils.git
git clone git://github.com/italiangrid/jobman-exception.git
git clone https://github.com/MarcoCecchi/org.glite.wms.git

cd classad-utils
cmake . -DCMAKE_INSTALL_PREFIX=$HOME/WORKAREA/stage -Dprefix=$HOME/WORKAREA/stage/usr -Dexec_prefix=$HOME/WORKAREA/stage/usr -Dlibdir=$HOME/WORKAREA/stage/usr/lib -Dincludedir=$HOME/WORKAREA/stage/usr/include
make install
cd ..
cd jobman-exception
cmake . -DCMAKE_INSTALL_PREFIX=$HOME/WORKAREA/stage  -Dprefix=$HOME/WORKAREA/stage/usr -Dexec_prefix=$HOME/WORKAREA/stage/usr -Dlibdir=$HOME/WORKAREA/stage/usr/lib -Dincludedir=$HOME/WORKAREA/stage/usr/include
make install
cd ..
cd org.glite.wms/org.glite.wms.common
cmake . -DPREFIX=$HOME/WORKAREA/stage/usr
make install

In order to make sure that everything worked try to execute an executable provided by org.glite.wms.common:

export LD_LIBRARY_PATH=$HOME/WORKAREA/stage/usr/lib
Configuration problem: file "glite_wms.conf" not found in the path(s) /etc/glite-wms, /opt/glite/etc, /etc,
It doesn't matter the error output, this is just to verify that the exe is correctly compiled and linked.

-- AlviseDorigo - 2012-10-04

This site is powered by the TWiki collaboration platformCopyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback