Re: crash when using std::vector

From: Rene Brun <Rene.Brun_at_cern.ch>
Date: Wed, 13 May 2009 11:13:51 +0200


Massimiliano Chiorboli wrote:
> I have a macro using an std::vector<TFile*>. When I run it in root
> I get a crash due to the std::vector: I get the crash when I try to
> get a histo from a file:
>
> TH1D* hReducedEff =
> (TH1D*)fVector[i]->Get("McSelection/HltPathsReducedEff");
Could you check that fVector[i] is not NULL ?

> If I try to compile the macro, I get an error in compilation:
>
> /usr/bin/ld: skipping incompatible /usr/lib64/libm.so when searching
> for -lm
> /usr/bin/ld: skipping incompatible /usr/lib64/libm.a when searching
> for -lm
> /usr/bin/ld: skipping incompatible /usr/lib64/libc.so when searching
> for -lc
> /usr/bin/ld: skipping incompatible /usr/lib64/libc.a when searching
> for -lc
> dlopen error:
> /home/chiorbo/scratch0/CheckTriggerTableForSusy_1e31_226_HLT/src/HLTriggerOffline/SUSYBSM/rootmacro/./makePlots_C.so:
> undefined symbol: _ZN7TLegend8AddEntryEP7TObjectPKcS3_
> Load Error: Failed to load Dynamic link library
> /home/chiorbo/scratch0/CheckTriggerTableForSusy_1e31_226_HLT/src/HLTriggerOffline/SUSYBSM/rootmacro/./makePlots_C.so
>
>
> How can I solve that?

It looks like you are mixing a version of ROOT compiled for a 32 bits architecture and compiling your code with ACLIC in 64 bits mode.

Rene Brun
>
> Thanks,
> Massimiliano
>
Received on Wed May 13 2009 - 11:14:30 CEST

This archive was generated by hypermail 2.2.0 : Wed May 13 2009 - 11:50:02 CEST