[Gate-users] Link problem in compiling Gate5-p01
Chris Reynolds
C.Reynolds at westminster.ac.uk
Mon Oct 12 12:00:04 CEST 2009
Simon,
Is there a build log so I can see exactly which components are not
compiling?
Cheers
Chris
On Mon, 2009-10-12 at 10:54 +0200, Simon Stute wrote:
> Hi,
>
> LD_LIBRARY_PATH is only used at the runtime for the programs to search
> the dynamic libraries.
> Check out the compilation at the beggining (compilation for the arf
> directory), I'm pretty sure some of the classes just did not compile,
> and so did not create some object files (.o), and that's why the link
> crashed.
> Since GATE is organized in thematic source directories, when a
> compilation problem occurs, it just stops the compilation in this
> directory, and others continue, that leads to link problem.
>
> Cheers,
> Simon
>
> 2009/10/12 Ida Häggström <ida.haggstrom at radfys.umu.se>
> Hello Chris!
>
> I would try adding the path to your .o-files to
> LD_LIBRARY_PATH, like I wrote in the post to Congwu. The
> default path where they end up is
> "gate_your_version/tmp/Linux-g++/Gate", you can check that
> directory to see if you find the files there (the ones which
> produce the undefined references, such as GateARFDataToRoot
> etc.). If that doesn't work, I don't know! =)
>
> /Ida
>
> 2009/10/9 Chris Reynolds <C.Reynolds at westminster.ac.uk>
>
>
>
> Hi,
> I'm also have linker issues on Ubuntu. Similarly
> compilation is fine:
>
> Linking Gate
> ./tmp/Linux-g++/Gate/libGate.a(GateOutputMgr.o): In
> function
> `GateOutputMgr::GateOutputMgr(G4String)':
> GateOutputMgr.cc:(.text+0xd13): undefined reference to
> `GateARFDataToRoot::GateARFDataToRoot(G4String const&,
> GateOutputMgr*,
> DigiMode)'
> ./tmp/Linux-g++/Gate/libGate.a(GateOutputMgr.o): In
> function
> `GateOutputMgr::GateOutputMgr(G4String)':
> GateOutputMgr.cc:(.text+0x12b3): undefined reference
> to
> `GateARFDataToRoot::GateARFDataToRoot(G4String const&,
> GateOutputMgr*,
> DigiMode)'
> ./tmp/Linux-g++/Gate/libGate.a(GateSteppingAction.o):
> In function
> `GateSteppingAction::UserSteppingAction(G4Step
> const*)':
> GateSteppingAction.cc:(.text+0x232d): undefined
> reference to `typeinfo
> for GateARFDataToRoot'
> GateSteppingAction.cc:(.text+0x23b3): undefined
> reference to
> `GateARFDataToRoot::IncrementNbOfSourcePhotons()'
> collect2: ld returned 1 exit status
> make: *** [bin/Linux-g++/Gate] Error 1
>
>
>
>
> On Wed, 2009-10-07 at 13:44 -0700, C C wrote:
> > Hi, everyone, I have problems of compiling the
> gate5.
> > the OS is Suse. It seems the compilation is not a
> problem. But just
> > cannot link. In the screen output there are a lot of
> "undefinded
> > reference" error. Below is part of the message. Can
> anybody give a
> > hint what may be the problem. Thanks a lot.
> >
> > Congwu
> >
> > ..........
> > GateMDBFieldDecoder.cc:(.text+0x1843): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > GateMDBFieldDecoder.cc:(.text+0x1857): undefined
> reference to
> > `GateTokenizer::BreakString(G4String const&, char)'
> > GateMDBFieldDecoder.cc:(.text+0x1881): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateMDBFieldDecoder.o): In function
> > `GateMDBFieldDecoder::DecodeNumericField(G4String
> const&, G4String,
> > G4String const&, GateMap<G4String, int>&,
> GateMap<G4String,
> > double>&)':
> > GateMDBFieldDecoder.cc:(.text+0x254e): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > GateMDBFieldDecoder.cc:(.text+0x2648): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateMDBFieldDecoder.o): In function
> > `GateMDBFieldDecoder::DecodeTextField(G4String
> const&, G4String,
> > G4String const&, GateMap<G4String, int>&)':
> > GateMDBFieldDecoder.cc:(.text+0x2bce): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > GateMDBFieldDecoder.cc:(.text+0x2cc5): undefined
> reference to
> > `GateTokenizer::CleanUpString(G4String&)'
> > ./tmp/Linux-g
> >
> ++/Gate/libGate.a(GateMDBFieldDecoder.o):GateMDBFieldDecoder.cc:(.text
> > +0x2f8a): more undefined references to
> > `GateTokenizer::CleanUpString(G4String&)' follow
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::~GateCompressedVoxelOutputMessenger()':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x5b):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x7c):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::~GateCompressedVoxelOutputMessenger()':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0xd4):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::~GateCompressedVoxelOutputMessenger()':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x124):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::SetNewValue(G4UIcommand*,
> > G4String)':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x31f):
> undefined
> > reference to
> `GateOutputModuleMessenger::SetNewValue(G4UIcommand*,
> > G4String)'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::GateCompressedVoxelOutputMessenger(GateCompressedVoxelOutput*)':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x490):
> undefined
> > reference to
> >
> `GateOutputModuleMessenger::GateOutputModuleMessenger(GateVOutputModule*)'
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x73b):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::GateCompressedVoxelOutputMessenger(GateCompressedVoxelOutput*)':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x960):
> undefined
> > reference to
> >
> `GateOutputModuleMessenger::GateOutputModuleMessenger(GateVOutputModule*)'
> > GateCompressedVoxelOutputMessenger.cc:(.text+0xc0b):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::~GateCompressedVoxelOutputMessenger()':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0xc9):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):
> > In function
> >
> `GateCompressedVoxelOutputMessenger::~GateCompressedVoxelOutputMessenger()':
> > GateCompressedVoxelOutputMessenger.cc:(.text+0x119):
> undefined
> > reference to
> `GateOutputModuleMessenger::~GateOutputModuleMessenger()'
> > ./tmp/Linux-g
> >
> ++/Gate/libGate.a(GateCompressedVoxelOutputMessenger.o):(.rodata._ZTI34GateCompressedVoxelOutputMessenger[typeinfo for GateCompressedVoxelOutputMessenger]+0x10): undefined reference to `typeinfo for GateOutputModuleMessenger'
> > ./tmp/Linux-g
> ++/Gate/libGate.a(GateFictitiousVoxelMapInserter.o):
> In
> > function
> `GateFictitiousVoxelMapInserter::AddOutput(G4String)':
> > GateFictitiousVoxelMapInserter.cc:(.text+0xb36):
> undefined reference
> > to `GateOutputMgr::instance'
> > GateFictitiousVoxelMapInserter.cc:(.text+0xb48):
> undefined reference
> > to `GateOutputMgr::instance'
> > GateFictitiousVoxelMapInserter.cc:(.text+0xb54):
> undefined reference
> > to `GateOutputMgr::m_digiMode'
> > GateFictitiousVoxelMapInserter.cc:(.text+0xb86):
> undefined reference
> > to
> `GateOutputMgr::AddOutputModule(GateVOutputModule*)'
> > GateFictitiousVoxelMapInserter.cc:(.text+0xbfe):
> undefined reference
> > to `GateOutputMgr::GateOutputMgr(G4String)'
> > GateFictitiousVoxelMapInserter.cc:(.text+0xc05):
> undefined reference
> > to `GateOutputMgr::instance'
> > collect2: ld returned 1 exit status
> > make: *** [bin/Linux-g++/Gate] Error 1
> >
> >
> >
> >
> ______________________________________________________________________
> > Hotmail: Powerful Free email with security by
> Microsoft. Get it now.
>
> > _______________________________________________
> > Gate-users mailing list
> > Gate-users at lists.healthgrid.org
> >
> http://lists.healthgrid.org/mailman/listinfo/gate-users
>
>
>
> --
> The University of Westminster is a charity and a
> company limited by
> guarantee. Registration number: 977818 England.
> Registered Office:
> 309 Regent Street, London W1B 2UW, UK.
>
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.healthgrid.org
> http://lists.healthgrid.org/mailman/listinfo/gate-users
>
>
>
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.healthgrid.org
> http://lists.healthgrid.org/mailman/listinfo/gate-users
>
>
--
The University of Westminster is a charity and a company limited by
guarantee. Registration number: 977818 England. Registered Office:
309 Regent Street, London W1B 2UW, UK.
More information about the Gate-users
mailing list