We are using the RCE platform to preform readout of Pixel module(s).
These instructions are mostly pertaining to the setup at SLAC, but some things are more general.
Getting accounts, etc.
You need an account on lab1 machines, and access to the NPA area on AFS. Contact:
Mike Huffer <mehsys@slac.stanford.edu>, Amedeo Perazzo <perazzo@slac.stanford.edu>
Some links to more RCE info:
To develop RCE code:
Code Block |
---|
ssh rdusr102 #machine in lab1 #ssh rddev102 #if you want to then go to a sometimes faster build machine source /afs/slac/g/npa/setup/npa_49.csh |
If you don't already have a release area setup, you need to make one:
Code Block |
---|
cvs co -d <mydir> release cd <mydir> cvs co rce cvs co rceusr cvs co rceapp #for example see ~ahaas/myrelease_new |
Then build:
Code Block |
---|
gmake ppc-rtems-rce405-dbg #builds rce apps #gmake i386-linux-dbg #if you want to build linux apps |
To run netbeans:
Code Block |
---|
source /afs/slac/g/npa/setup/npa_49.csh #make sure you've done this first ~ahaas/netbeans-6.5.1/bin/netbeans & |
Import your release area via:
"File->New Project..."
"C/C++ Project From Existing Code"
"Existing Makefile:" enter the "<release directory>/Makefile"
Change "Build Command:" to "gmake ppc-rtems-rce405-dbg"
Next, Next, Finish, then build the project.
You may also need to configure Code Assistance via right clicking on the project, and going to "Configure Code Assistance...", "Simple Mode".
To run RCE code:
Code Block |
---|
telnet rce22 root (nopass) mount -t nfs 172.21.5.150:/nfsexport/home /nfs #got ip address from "mount" on rddev102 cd /nfs/ahaas/myrelease_new/build/rceapp/mod/ppc-rtems-rce405 runtask -N test ./hellomod.1.0.test.so |
Other handy RCE commands:
Code Block |
---|
task cpuuse stackuse stoptask -N test syslog syslog -l 10 #just last ten lines syslog -c #clear (see myrelease_new/rce/shell/src/syslog.cc) |
Working on STcontrol / PixLib / unixdaq
To compile/run:
Code Block |
---|
bash cp -r /reg/lab1/home/estrauss/release-1.0_edit . export ROOTSYS=/reg/lab1/home/estrauss/root/ export QTBIN=/reg/lab1/home/estrauss/qt-4.4.2/bin/ cd release-1.0_edit . setup_noTDAQ.sh #if you want to start NetBeans: ~ahaas/netbeans-6.5.1/bin/netbeans & #otherwise just do this: make bin/STcontrol |
To include in code in NetBeans, look at release-1.0_edit/Makefile. Each directory needs to be added as a separate project.
Warning, if you try to just add the whole release-1.0_edit directory at once, NetBeans may just hang forever!
For instance, to add "STcontrol" do:
"File->New Project..."
"C/C++ Project From Existing Code"
"Existing Makefile:" "release-1.0_edit/Applications/Pixel/STcontrol/Makefile"
Change "Build Command:" to "qmake -makefile && make"
Change "Clean Command:" to "qmake -makefile && make clean"
Next, Next, Finish, then build the project.
Then repeat to add other directories/projects you're interested in, with their corresponding Makefiles and build/clean commands.
You also need to configure Code Assistance via right clicking on the project, and going to "Configure Code Assistance...", "Advanced Mode", "Explore Object Files in Folder" and folder = "release-1.0_edit/Applications/Pixel/STcontrol", for instance.