[Gate-users] Compiling Gate V5.0.0 & V5.0.0_p01

Peter Bloomfield peter.bloomfield at camhpet.ca
Wed Sep 2 17:42:21 CEST 2009


Dear Gaters,

I have had to change the file GateToLMF.h to compile Gate, this was also the case
in Gate version 5.0.0
I have the following setup:
  OS : openSUSE 11.1 - 32-bit
  gcc : gcc version 4.3.2 [gcc-4_3-branch revision 141291] (SUSE Linux)
  Geant : geant4.9.2.p01
  ROOT : 5.24
  CLHEP : 2.0.4.2
  Gate : v5.0.0_p01
  LMF : v3.0

After issuing 'make' I get following errors
  Making dependency for file src/GateOPETSystem.cc ...
  In file included from src/GateOPETSystem.cc:13:     
  ../output/include/GateToLMF.hh:25:22: error: iostream.h: No such file or directory
and repeated for any .cc file using GateToLMF.hh

The library libGate.a is created, but Gate fails to link with the following

Linking Gate ...                                                                                                                                     
./tmp/Linux-g++/Gate/libGate.a(GateDetectorConstruction.o): In function `GateDetectorConstruction::BuildSurfaces()':                                 
GateDetectorConstruction.cc:(.text+0x3d9): undefined reference to `GateObjectCreatorStore::GetInstance()'                                            
GateDetectorConstruction.cc:(.text+0x3f7): undefined reference to `GateSurfaceList::BuildSurfaces()'                                                 
./tmp/Linux-g++/Gate/libGate.a(GateDetectorConstruction.o): In function `GateDetectorConstruction::GateDetectorConstruction()':                      
GateDetectorConstruction.cc:(.text+0x6c1): undefined reference to `GateObjectCreatorStore::GetInstance()'                                            
GateDetectorConstruction.cc:(.text+0x6c9): undefined reference to `GateSystemListManager::GetInstance()'                                             
./tmp/Linux-g++/Gate/libGate.a(GateDetectorConstruction.o): In function `GateDetectorConstruction::GateDetectorConstruction()':                      
GateDetectorConstruction.cc:(.text+0xad1): undefined reference to `GateObjectCreatorStore::GetInstance()'                                            
GateDetectorConstruction.cc:(.text+0xad9): undefined reference to `GateSystemListManager::GetInstance()'                                             
./tmp/Linux-g++/Gate/libGate.a(GateDigitizer.o): In function `GateDigitizer::~GateDigitizer()':                                                      
GateDigitizer.cc:(.text+0x1a19): undefined reference to `vtable for GateNamedObject'                                                                 
./tmp/Linux-g++/Gate/libGate.a(GateDigitizer.o): In function `GateDigitizer::~GateDigitizer()':                                                      
GateDigitizer.cc:(.text+0x1f49): undefined reference to `vtable for GateNamedObject'                                                                 
./tmp/Linux-g++/Gate/libGate.a(GateDigitizer.o): In function `GateDigitizer::~GateDigitizer()':                                                      
GateDigitizer.cc:(.text+0x2479): undefined reference to `vtable for GateNamedObject'                                                                 
./tmp/Linux-g++/Gate/libGate.a(GateDigitizer.o): In function `GateClockDependent::~GateClockDependent()':                                            
GateDigitizer.cc:(.text._ZN18GateClockDependentD2Ev[GateClockDependent::~GateClockDependent()]+0xf): undefined reference to `vtable for GateNamedObject'
	.............. Lots of similar lines ..............
./tmp/Linux-g++/Gate/libGate.a(GateArrayRepeaterMessenger.o): In function `GateArrayRepeaterMessenger::GateArrayRepeaterMessenger(GateArrayRepeater*)':
GateArrayRepeaterMessenger.cc:(.text+0xffa): undefined reference to `GateObjectRepeaterMessenger::GateObjectRepeaterMessenger(GateVObjectRepeater*)'
GateArrayRepeaterMessenger.cc:(.text+0x18ed): undefined reference to `GateObjectRepeaterMessenger::~GateObjectRepeaterMessenger()'
./tmp/Linux-g++/Gate/libGate.a(GateArrayRepeaterMessenger.o): In function `GateArrayRepeaterMessenger::~GateArrayRepeaterMessenger()':
GateArrayRepeaterMessenger.cc:(.text+0x186): undefined reference to `GateObjectRepeaterMessenger::~GateObjectRepeaterMessenger()'
./tmp/Linux-g++/Gate/libGate.a(GateArrayRepeaterMessenger.o): In function `GateArrayRepeaterMessenger::~GateArrayRepeaterMessenger()':
GateArrayRepeaterMessenger.cc:(.text+0x206): undefined reference to `GateObjectRepeaterMessenger::~GateObjectRepeaterMessenger()'
./tmp/Linux-g++/Gate/libGate.a(GateArrayRepeaterMessenger.o):(.rodata._ZTI26GateArrayRepeaterMessenger[typeinfo for GateArrayRepeaterMessenger]+0x8): undefined 
reference to `typeinfo for GateObjectRepeaterMessenger'
collect2: ld returned 1 exit status
make: *** [bin/Linux-g++/Gate] Error 1

If I edit the file GateToLMF.hh and replace "#include iostream.h" with "#include <iostream>"
and then 'make clean', followed by 'make', Gate compiles fine and executes.

Is there something I am missing in my SuSE system setup?

Thanks


Peter

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20090902/8fedc6ff/attachment.htm>


More information about the Gate-users mailing list