Computer/linux

prepare to do very crazy thing

citadel 2011. 10. 20. 14:33

I am developing a customized RunControl (RC) GUI for the Qweak Experiment at JLab, because the standard RC GUI has a limited system resources and is a closed source. So I have been limited to add more features to make a simple and flexible GUI.

The first attempt to ask them to provide a command line tools, at the first time, it look a quite promising, but after a quick and short test, it doesn't what I expect. Its performance is so slow to compare with other CODA components. So one guy recommends to use cMsg if I want to use a full feature of CODA.

Yes, it can provide me more freedom from a closed source program, then why not.

It turn out to give me a simple building system, its name is SCons at http://www.scons.org/ . Thanks to all open sources developers. I simple install it by using yum and apt-get in RHEL5.4 and in Debian Lenny.

(I installed ant on Debian Lenny)

1) Download cMsg from JLab site https://coda.jlab.org/wiki/Downloads/cMsg/
2) Extract them in $HOME/coda/cMsg-3.1/, cd $HOME/coda/cMsg-3.1/
3) setenv INSTALL_DIR $PWD
4) scons

That's it. Great, SCons is more simple than .... other building system. !!!

0) setenv CMSGROOT  $HOME/coda/cMsg-3.1/Linux-***/


After that I try to modifiy my own project's configure.ac file, I add  only CMSG
AC_LIBTOOL_DLOPEN

ROOT_PATH
CMSG

And add the following in Makefile.am

ACLOCAL_AMFLAGS = -I $ROOTSYS/build/misc -I $CMSGROOT

1) autoreconf --force --install -v
2) ./configure --with-cmsg=$CMSROOT/Linux-i686 or *_64
3) make


Add the following environment variable in .bashrc or .tcshrc
export CMSGROOT="$HOME/Qweak/cMsg-3.1/Linux-x86_64/"
export LD_LIBRARY_PATH="${CMSGROOT}/Lib:${LD_LIBRARY_PATH}"



setenv CMSGROOT  $HOME/programs/coda/cMsg-3.1/Linux-i686
setenv LD_LIBRARY_PATH ${CMSGROOT}/lib:${LD_LIBRARY_PATH}




In addition, to simplify CMSGROOT in shell environment and Makefile.am, I made a symbolic link

$ cd $CMSGROOT
$ ls
bin  include  lib
 ln -s ../cmsg.m4 cmsg.m4


OK, now I am ready to use the cMsg in my own program, that means I can communicate the CODA platform as much as I want. Jawohl!