I'm having the exact same problem that Brian was having (read below) and I wanted to find out if anyone managed to find a work around (Brian says that he did not). I'm running Root 3.05/03 on MacOSX 10.2.6 with the latest developer tools including gcc3 -- and the newest version of dlcompat. I created a simplified version of the problem (which works just fine when run with the interpreter). http://darkwing.uoregon.edu/~jearly/HEP/ The example program 'treesimple' compiles and runs just fine. It creates a tree and writes it to a root file without a hitch. The example program 'treeread' compiles just fine but then spits out the same error message Brian was getting when reading the file. I tried Rene's suggestion but that didn't change anything -- same results. Any other ideas? Thanks for any help, Jeffrey > Hi Brian, > > This looks like a dynamic loading problem on MacOS. > To see if this is the case, add in your main program > > #include <TApplication.h> > > > int main(int argc, char **argv) > { > TApplication theApp("App", &argc, argv); > .. your own code > .. > } > > Rene Brun > > On Fri, 14 Feb 2003, > Brian Kurt Fujikawa wrote: > >> Hello >> >> I'm running root v3.04.02 (source installation) on MacOSX 10.2.3 (X Public >> Beta 0.2). I am having trouble running a standalone program that loads >> trees. Specifically, my program includes the lines: >> >> TFile* EventFile= >> new TFile("/Users/bkf/emiT/data/Data1_20021209_15477.root"); >> TTree* CoincidenceEventTree= >> (TTree*)EventFile->Get("Event/CoincidenceEventTree"); >> TBranch* CoincidenceEventBranch= >> CoincidenceEventTree->GetBranch("CoincidenceEventBranch"); >> >> and when I run it, I get the following error messages: >> >> Warning in <TClass::TClass>: no dictionary for class TTree is available >> Warning in <TClass::TClass>: no dictionary for class TBranchElement is >> available >> Warning in <TClass::TClass>: no dictionary for class TBranch is available >> Warning in <TClass::TClass>: no dictionary for class TLeafElement is >> available >> Warning in <TClass::TClass>: no dictionary for class TLeaf is available >> Error in <TBuffer::CheckByteCount>: object of class TNamed read too few >> bytes: 26 instead of 821615 >> Warning in <TBuffer::CheckByteCount>: TNamed::Streamer() not in sync with >> data on file, fix Streamer() >> >> *** Break *** bus error >> Abort >> >> >> This programs DOES run when I execute it as a script in root and it also >> runs on a linux box. >> >> I am using the following commands to build this program ("myprog"): >> >> g++ -O -Wall -pipe -I/Users/bkf/include/DAT/ -I/Users/bkf/root/include -c >> myprog.cc >> g++ -O -Xlinker -bind_at_load -flat_namespace -o myprog myprog.o >> -L/Users/bkf/lib/ -lDATEvent -L/Users/bkf/root/lib -lCore -lCint -lHist >> -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lm >> -ldl >> >> Any ideas? >> >> Best Regards >> >> Brian
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET