No dictionaries for std::complex

From: Marcelo Zimbres <mzimbres_at_gmail.com>
Date: Sun, 20 May 2012 04:54:12 +0200


Hi Root experts,

I have a class which inherits from TNamed, with a std::complex<double> data member.
When I compile it on Cint (.L TAlm.cxx+) and try to write an object of this class to
a root file, everything goes fine, but if I try the same on a standalone application,
I get the error:

Error in <TAlm::fAlm streamer>: Missing the TClass object for complex<double>

even though, my executable is linked to the library where the dictionary for TAlm should be
(I use rootcint to generate dictionaries in this case and put them in the library). To fix
the problem I am adding

gROOT->ProcessLine("#include <complex>");

in the main function, but I suppose this is not the right way to do it? Why my program does find the dictionary for std::complex?

Thanks in advance,
Marcelo Received on Sun May 20 2012 - 04:54:30 CEST

This archive was generated by hypermail 2.2.0 : Mon May 21 2012 - 23:50:02 CEST