Re: ROOT-5.24.00 vs ROOT-5.22.00 with reflex dictionary

From: Xinchun Tian <>
Date: Mon, 16 Nov 2009 23:23:51 -0500

Hi Roel,

On Mon, Nov 16, 2009 at 8:09 AM, Roel Aaij <> wrote:

    Hi Xinchun,

    > Following your suggestions, the compile fails with the following errors which are the same between v5.22.00 and v5.24.00.

    How are you doing, have you managed to solve the problem?

Unfortunately, I did not. I even have not had a chance to try Brett's suggestion.

    The undefined references listed usually imply that a generated     dictionary is not linked into the library. I'm not an expert on the     differences between rootcint and genreflex, so there might also be a     cause there.

    How are object persisted? Do you use the ROOT IO system exclusively or     is another method used? The generated streamers are needed to persist     objects in root files. Again, I don't know if only rootcint generates     these, of if they can be generated with genreflex too.

I have not looked into the details of FMWK which is used as the framework for NOvA offline. I believe ROOT IO is used for object persistent. genreflex should also generate these, I think.

    > Any ideas?

    I wanted to take a look at your code, but I cannot find the svn     repository that you referred to in an earlier mail. Is it still at:     /afs/

Sorry about this, the above repos. is just a temp. one for development purpose, and has been removed after Fermilab setup the official SVN repository for NOvA offline, but you may not be able to access it without Kerberos principle, so I recover my svn repository, you can get the code following the previous mail, and I put them down here: shell> svn export file:///afs/ shell> ./novainst trunk all

The above will help you to install, cmake, gccxml, ROOT 5.24.00 and FMWK. you will notice the following errors:
--->> genreflex: INFO: Parsing file /home/tianxc/offline/nova-trunk/fmwk/EventDataModel/dict/dict.h with GCC_XML OK
--->> genreflex: INFO: Generating Reflex Dictionary
--->> genreflex: ERROR: class edm::EventHeader derives from TObject but does not use ClassDef!
--->> You MUST put ClassDef(edm::EventHeader, 1); into the class definition.
--->> genreflex: ERROR: class edm::Event derives from TObject but does not use ClassDef!
--->> You MUST put ClassDef(edm::Event, 1); into the class definition.

After uncomment
ClassDef & ClassImp, the compile will fail as the last mail said.

Thanks for any help.
Xinchun Received on Tue Nov 17 2009 - 05:24:15 CET

This archive was generated by hypermail 2.2.0 : Tue Nov 17 2009 - 11:50:05 CET