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!