Difference between revisions of "Gumstix cMsg"
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Compiling cMsg library for Gumstix | Compiling cMsg library for Gumstix | ||
+ | |||
+ | |||
+ | = V 3.0= | ||
+ | |||
+ | Download source code from JLab | ||
+ | |||
+ | You need the cMsg code | ||
+ | |||
+ | https://coda.jlab.org/wiki/index.php/CMsg_-_Publish/Subcribe_messaging | ||
+ | |||
+ | |||
+ | and the Makefile extensions | ||
+ | |||
+ | ftp://ftp.jlab.org/pub/coda/BMS/ | ||
+ | |||
+ | I copied the makefile extension | ||
+ | |||
+ | BMS/Makefile.vxworks-ppc | ||
+ | |||
+ | to Makefile.gumstix | ||
+ | |||
+ | then change the compiler so it points to the gumstix cross compiler | ||
+ | |||
+ | ~/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi/bin/gcc | ||
+ | |||
+ | ~/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi/bin/g++ | ||
+ | |||
+ | ==Install Using SCONS== | ||
+ | Carl Timmer edited the SConstruct file | ||
+ | |||
+ | set the environemental variables | ||
+ | |||
+ | INSTALL_DIR and GUMBASE | ||
+ | |||
+ | bin >printenv INSTALL_DIR | ||
+ | /home/daq/gumstix/cMsg-3.0 | ||
+ | |||
+ | bin >printenv GUMBASE | ||
+ | /home/daq/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi | ||
+ | |||
+ | scons --gum install | ||
+ | scons --gum examples | ||
+ | |||
+ | scons --gum -c | ||
+ | |||
+ | scons -h | ||
+ | |||
+ | === Installing on cdaql3 at JLAB=== | ||
+ | |||
+ | I downloaded the tarball into | ||
+ | /net/cdaqfs/apps/local/build/scons | ||
+ | |||
+ | and did | ||
+ | |||
+ | scons-src-1.3.0]$ python bootstrap.py build/scons | ||
+ | |||
+ | as instructed by the README file | ||
+ | |||
+ | |||
+ | I then did | ||
+ | |||
+ | export SCONS_LIB_DIR=`pwd`/src/engine | ||
+ | |||
+ | and | ||
+ | |||
+ | export SCONS_LIB_DIR=`pwd`/src/engine | ||
+ | |||
+ | then I did | ||
+ | |||
+ | cd build/scons/ | ||
+ | and | ||
+ | |||
+ | python setup.py install --prefix=/net/cdaqfs/apps/local/RHEL5 | ||
+ | |||
+ | I now see it in | ||
+ | |||
+ | <pre> | ||
+ | [cdaq@cdaql3 scons]:ls /net/cdaqfs/apps/local/RHEL5/bin/ | ||
+ | bltsh bltwish24 gsl-config scons sconsign-1.3.0 | ||
+ | bltsh24 fftw-wisdom gsl-histogram scons-1.3.0 scons-time | ||
+ | bltwish fftw-wisdom-to-conf gsl-randist sconsign scons-time-1.3.0 | ||
+ | </pre> | ||
+ | |||
+ | I next went to the cMsg-3.0 directory | ||
+ | |||
+ | /net/cdaqfs/apps/local/build/gumstix/cMsg-3.0 | ||
+ | |||
+ | and did | ||
+ | export INSTALL_DIR=/net/cdaqfs/apps/local/RHEL5 | ||
+ | |||
+ | and then | ||
+ | |||
+ | /net/cdaqfs/apps/local/RHEL5/bin/scons install | ||
+ | |||
+ | this put the cMsg libraries and binaries in INSTALL_DIR/Linux-686 | ||
+ | |||
+ | |||
+ | I see producer and consumer at | ||
+ | <pre> | ||
+ | [cdaq@cdaql3 cMsg-3.0]:/net/cdaqfs/apps/local/RHEL5/Linux-i686/bin/producer | ||
+ | /net/cdaqfs/apps/local/RHEL5/Linux-i686/bin/producer: error while loading shared libraries: libcmsgRegex.so: cannot open shared object file: No such file or directory | ||
+ | </pre> | ||
+ | |||
+ | I now need to set the LD_LIBRARY_PATH so it can see the shared libraries or move them to one of the subdirectories currently in the path | ||
+ | |||
+ | <pre> | ||
+ | [cdaq@cdaql3 cMsg-3.0]:printenv LD_LIBRARY_PATH | ||
+ | /usr/local/coda/CMLOG/2.1/lib/Linux-rhe:/site/coda/2.5/Linux-rhe/lib:/usr/local/coda/cdev_1.7.5/lib/Linux-rhe:/net/cdaqfs/home/EPICS/dvlepics/extensions-R3.13.2/lib/Linux:/apps/root/5.18-00/root/lib | ||
+ | |||
+ | </pre> | ||
[http://wiki.iac.isu.edu/index.php/Gumstix_Verdex] [[Gumstix_Verdex]] | [http://wiki.iac.isu.edu/index.php/Gumstix_Verdex] [[Gumstix_Verdex]] | ||
[http://wiki.iac.isu.edu/index.php/CMsg] [[CMsg]] | [http://wiki.iac.isu.edu/index.php/CMsg] [[CMsg]] |
Latest revision as of 16:46, 25 June 2010
Compiling cMsg library for Gumstix
V 3.0
Download source code from JLab
You need the cMsg code
https://coda.jlab.org/wiki/index.php/CMsg_-_Publish/Subcribe_messaging
and the Makefile extensions
ftp://ftp.jlab.org/pub/coda/BMS/
I copied the makefile extension
BMS/Makefile.vxworks-ppc
to Makefile.gumstix
then change the compiler so it points to the gumstix cross compiler
~/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi/bin/gcc
~/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi/bin/g++
Install Using SCONS
Carl Timmer edited the SConstruct file
set the environemental variables
INSTALL_DIR and GUMBASE
bin >printenv INSTALL_DIR /home/daq/gumstix/cMsg-3.0
bin >printenv GUMBASE /home/daq/gumstix/gumstix-oe/tmp/cross/arm-angstrom-linux-gnueabi
scons --gum install scons --gum examples
scons --gum -c
scons -h
Installing on cdaql3 at JLAB
I downloaded the tarball into /net/cdaqfs/apps/local/build/scons
and did
scons-src-1.3.0]$ python bootstrap.py build/scons
as instructed by the README file
I then did
export SCONS_LIB_DIR=`pwd`/src/engine
and
export SCONS_LIB_DIR=`pwd`/src/engine
then I did
cd build/scons/ and
python setup.py install --prefix=/net/cdaqfs/apps/local/RHEL5
I now see it in
[cdaq@cdaql3 scons]:ls /net/cdaqfs/apps/local/RHEL5/bin/ bltsh bltwish24 gsl-config scons sconsign-1.3.0 bltsh24 fftw-wisdom gsl-histogram scons-1.3.0 scons-time bltwish fftw-wisdom-to-conf gsl-randist sconsign scons-time-1.3.0
I next went to the cMsg-3.0 directory
/net/cdaqfs/apps/local/build/gumstix/cMsg-3.0
and did export INSTALL_DIR=/net/cdaqfs/apps/local/RHEL5
and then
/net/cdaqfs/apps/local/RHEL5/bin/scons install
this put the cMsg libraries and binaries in INSTALL_DIR/Linux-686
I see producer and consumer at
[cdaq@cdaql3 cMsg-3.0]:/net/cdaqfs/apps/local/RHEL5/Linux-i686/bin/producer /net/cdaqfs/apps/local/RHEL5/Linux-i686/bin/producer: error while loading shared libraries: libcmsgRegex.so: cannot open shared object file: No such file or directory
I now need to set the LD_LIBRARY_PATH so it can see the shared libraries or move them to one of the subdirectories currently in the path
[cdaq@cdaql3 cMsg-3.0]:printenv LD_LIBRARY_PATH /usr/local/coda/CMLOG/2.1/lib/Linux-rhe:/site/coda/2.5/Linux-rhe/lib:/usr/local/coda/cdev_1.7.5/lib/Linux-rhe:/net/cdaqfs/home/EPICS/dvlepics/extensions-R3.13.2/lib/Linux:/apps/root/5.18-00/root/lib