I am trying to get rid of the following warning:
Warning in TClass::TClass: no dictionary for class AttributeListLayout is available
How can I define the creation of that dictionary in my Linkdef file to avoid that warning message ?
Thanks and best regards,
#pragma link C++ class AttributeListLayout+;
thanks for the suggestion, but it seems the class is unknown:
Error: link requested for unknown class AttributeListLayout inc/LinkDef.h:17:
Warning: Error occurred during reading source files
Warning: Error occurred during dictionary source generation
In fact I tried to look for that class in the ROOT doc but could not find it, so I am not sure how to include the corresponding header file in the Linkdef file ?
I don’t know from where you get the “AttributeListLayout” class, but you need to add something like a “AttributeListLayout.h” to the list of header files which are parsed, i.e. to the command line which runs rootcint.
me neither ???
[pb-d-128-141-141-234.cern.ch]: ~% root test.C
Error: cannot open file "AttributeListLayout.h" test.C:2:
*** Interpreter error recovered ***
Am I missing something obvious ?
Thanks and cheers, Sergio
test.C (47 Bytes)
I mean, I am just using classes inheriting from TObject, and none is called AttributeListLayout…
I’ve seen this warning all the time when working with TTree or TChain, so I was expecting some relation with CINT, but clearly it’s not a ROOT class…
If your root file contains “unknown” classes, generate appropriate dictionary using:
MyFile->MakeProject(“libMyFile”, “*”, “recreate++”);
See also: http://root.cern.ch/root/html/TFile.html#TFile:MakeProject
If this fails, you need to talk to those who created your root files.
FYI AttributeListLayout is class provided by POOL (and often seen in ATLAS files).
I am also facing the same problem, not for class AttributeListLayout, but for some arbitrary class ABC. I receive the following warning when opening a root file:
Warning in TClass::TClass: no dictionary for class ABC is available.
What is “libMyFile” in
MyFile->MakeProject(“libMyFile”, “*”, “recreate++”); ?
What is a Linkdef file and how can I access it?
What is my general line of action assuming I have the header file defining the class ABC?