[Gate-users] Problems with installation of ECAT7 library
Ida Häggström
ida.haggstrom at radfys.umu.se
Wed Sep 9 15:21:39 CEST 2009
Hi all!
I've successfully installed and run GATE for a week or so now when I decided
I probably need the ECAT7 output as well.. (I omitted that the first time I
installed GATE). Anyway, I've installed the package according to the guide
at "http://cc.in2p3.fr/docenligne/674/en". I've thus run
> cd <...>/gate/ECAT
> make -f Makefile.unix
> rm *.o
> mkdir <...>/gate/gate_v5.0.0/ECAT
> mkdir <...>/gate/gate_v5.0.0/ECAT/lib
> mkdir <...>/gate/gate_v5.0.0/ECAT/lib/Linux-g++
> mkdir <...>/gate/gate_v5.0.0/ECAT/include
After this I copy the files "matrix.h" and "machine_indep.h" into the
ECAT/include directory and I copy the file "libecat.a" into
ECAT/lib/Linux-g++.
I found on a previous thread that it was best to completely recompile GATE,
with make clean and all... so I remove and reinstall GATE (note that I have
NOT set the ECAT7_HOME variable yet!):
> cd <...>/gate/gate_v_5.0.0
> make clean (I also remove the tmp directory)
> make
After successful GATE compilation I set
> export ECAT7_HOME=<...>/gate/ECAT
I try and run the example PET_Ecat_System.mac in GATE, with default
sinogram and ecat7 output, but it seems the ECAT7 library isn't found
or something:
....
GATE object: 'digitizer/finalCoinc'
Is enabled? Yes
Nb of elements: 0
Attached to: 'digitizer'
Output: 'finalCoinc'
***** COMMAND NOT FOUND </gate/output/sinogram/StoreDelayed> *****
***** Batch is interupted!! *****
Graphics systems deleted.
Visualization Manager deleting...
GateRTPhantomMgr deleting...
[ida at localhost example_PET_Scanner]$
....
If I remove the sinogram output and only use ecat7 output I instead get
...
***** COMMAND NOT FOUND </gate/output/ecat7/enable> *****
....
When I try to compile GATE with the ECAT7_HOME variable set BEFORE
compilation I don't get a successful linking:
....
Creating shared library tmp/Linux-g++/Gate/libGate.so ...
Creating/replacing object files in ./tmp/Linux-g++/Gate/libGate.a ...
ar: creating ./tmp/Linux-g++/Gate/libGate.a
Compiling Gate.cc ...
Using global libraries ...
Linking Gate ...
./tmp/Linux-g++/Gate/libGate.so: undefined reference to `GateVObjectMove::
PushMyPlacements(CLHEP::HepRotation const&, CLHEP::Hep3Vector const&,
double)'
./tmp/Linux-g++/Gate/libGate.so: undefined reference to `GateVolumeID::
MoveToBottomVolumeFrame(CLHEP::Hep3Vector, int) const'
./tmp/Linux-g++/Gate/libGate.so: undefined reference to
`GateToASCII::GateToASCII(G4String const&, GateOutputMgr*, DigiMode)'
...
./tmp/Linux-g++/Gate/libGate.so: undefined reference to
`GateToRoot::GetPHData(ComptonRayleighData&)'
./tmp/Linux-g++/Gate/libGate.so: undefined reference to
`GateTrack::GetTrackID()'
collect2: ld returned 1 exit status
make: *** [bin/Linux-g++/Gate] Error 1
....
My question is do you set the ECAT7_HOME variable before or after GATE
compilation, and how do you get GATE to enable to ECAT7 output?
Thanks in advance!
/Ida
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20090909/48a3ac37/attachment.htm>
More information about the Gate-users
mailing list