Re: no dictionary

From: Marc Escalier <escalier_at_lal.in2p3.fr>
Date: Wed, 28 Sep 2011 21:39:16 +0200


thanks a lot to both of you

ok, will try your recipes



On Wed, 28 Sep 2011, Marcelo Zimbres wrote:

> Hi,
>
> my suggestion here is that you substitute
>
> >gSystem->Load("./checkOQ_cxx.so");
>
> by
>
> gROOT->ProcessLine(".L checkOQ.C+");
>
> this will update the .so everytime you change the class.  But it seems you are missing the header file where
> std::pair<std::string, std::string> is declared, you may try to do what Venkatesh suggested though.
>
> Regards,
> Marcelo
>
> 2011/9/28 Marc Escalier <escalier_at_lal.in2p3.fr>
> Hi,
>
> so, i use a Makefile
> i generate the dictionnaries .so, in particular from the main class that contains the main code, using
> rootcint, with
>
>  gSystem->Load("./checkOQ_cxx.so");
>  gSystem->Load("./EnergyRescaler_cxx.so");
>  //  to produce checkOQ_C.so : .L checkOQ.C+; to create the checkOQ_C.so
>  //.L checkOQ.C+
>  // needs to do setup.sh -tag=15.6.9.11,AtlasProduction before
>  TChain *mychain_data=new TChain("photon");
>  mychain_data->Add("/sps/atlas/groups/photons/PhotonD3PD/data/p541/Skimmed/2011/PeriodB/group10.phys-higgs.HSG1.Skim2g
> 20loose_data11_7TeV.00177986.physics_Egamma.merge.NTUP_PHOTON.r2276_p516_p523_p541_v0001.110427183221/*root*");
>
>  gSystem->AddIncludePath("-I/afs/in2p3.fr/home/e/escalier/public/Photon/Common/DataQuality/GoodRunsLists");
>  gSystem->AddIncludePath("-I/afs/in2p3.fr/home/e/escalier/public/Photon/Common/PhysicsAnalysis/AnalysisCommon/PileupRe
> weighting");
>
>  mychain_data->Process("ComputeInvariantMass.cxx+"); //note the "+"
>
> -->this creates ComputeInvariantMass_cxx.so
>
> But from the warning lines you sent, it seems you are not loading the appropriate shared
> libs(the one containing the
> dictionaries) when you try to read a root file containing the objects in question.
>
>
> maybe : actually i don't understand what is the meaing of "loading the library"
>
> just in case : in my code, i have put :
> gSystem->Load("./ComputeInvariantMass_cxx.so");
>
> -->no impact on this warning
>
> ==============
>
>
> On Wed, 28 Sep 2011, Marcelo Zimbres wrote:
>
> Hi Marc,
>
> are you compiling your code with a Makefile or using aclic? If you are using a Makefile you should
> not forget to
> generate the dictionaries from you class header file using rootcint. If you are using aclic the
> dictionaries should be
> generated automatically.
>
> But from the warning lines you sent, it seems you are not loading the appropriate shared libs(the one
> containing the
> dictionaries) when you try to read a root file containing the objects in question.
>
> Can you send us more information?
>
> Cheers
> Marcelo
>
> 2011/9/28 Marc Escalier <escalier_at_lal.in2p3.fr>
>      thanks Venkat
>
>      actually, i have no file "LinkDef.h" in my program
>
>      would you have an idea ?
>
>      just for information, my program is a compiled one, with the main code being a class that
> inheritate from
>      TSelector, after having used MakeSelector() to create it
>
>      ======================
>
>      On Wed, 28 Sep 2011, Venkatesh Kaushik wrote:
>
>      Hi Marc,
>      For the second warning, you need to include
>      in your LinkDef.h the following:
>      #pragma link C++ class std::pair<std::string, std::string>;
>
>      The first one is (I think ATLAS specific and no dictionary
>      is available).
>      - Venkat
>
>      Marc Escalier wrote:
>            Hello,
>
>            would somebody know what is the meaning of :
>
>            Warning in <TClass::TClass>: no dictionary for class
>            AttributeListLayout is available
>            Warning in <TClass::TClass>: no dictionary for class
>            pair<string,string> is available
>
>            thanks
>
>
>
>      --
>      =========================================================
>      Venkatesh Kaushik
>      Research Associate
>
>      University of Arizona              ATLAS Experiment_at_CERN
>      Office: PAS 334                    40-1-C11
> Tucson, Arizona                    Gen?ve, Switzerland
> Tel: +1 520 626 7042               +41 22 76 79137
> venkat_at_physics.arizona.edu         venkat.kaushik_at_cern.ch
>      http://atlas.physics.arizona.edu/~venkat
> =========================================================
>
>
>
>
>
>
>
>
Received on Wed Sep 28 2011 - 21:39:25 CEST

This archive was generated by hypermail 2.2.0 : Wed Sep 28 2011 - 23:50:01 CEST