gm2ringsim is part of the
g2sim simulation suite.
Current problems and work-arounds¶
REFLEX: Attempt to change the size of the class¶
If you set up
gm2 v201211_1 and then build
gm2ringsim yourself and then try to run, you'll get an error
%MSG terminate called after throwing an instance of 'Reflex::RuntimeError' what(): REFLEX: Attempt to change the size of the class gm2ringsim::StrawArtRecord Aborted
After sourcing your localProduct setup script, execute the following command (best to cut and paste),
export LD_LIBRARY_PATH=`dropit -p $LD_LIBRARY_PATH 'gm2ringsim/v0_0_1'`
When Art starts, it scans all libraries in
LD_LIBRARY_PATH looking for Root dictionaries, like
libgm2ringsim_strawtracker_map.so. Apparently, if an object is specified in more than one dictionary library, Root compares the new object with the old object and if they are different, it gives this error. That's what's happening here. This release,
gm2 v201211_1 has a built
gm2ringsim. If you build
gm2ringsim yourself, you make a new set of root dictionary libraries with a new
StrawArtRecord. That object is different than what is in the release.
The solution drops the pre-built release libraries from the
LD_LIBRARY_PATH search path, eliminating the error.
Action item for Adam - for the next release of Art, I need to add logic to drop libraries from a release that you are building yourself.