We have a large custom C++ shared library (on Solaris machines) libbox.so. [It's not derived from TObject.] I want to access one particular class (Box) in that library from within Cint. I had experience in accessing c library before but have some problem in this case. Please advise me of any possible resolutions. Here is the steps that I took. --------------------------------- (1) copy all .H files for libbox.so into directory A. (2) create boxLinkDef.h #ifdef __CINT__ #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; #pragma link off all typedef; #pragma link C++ class Box-; #endif (3) rootcint boxDict.C -c -p Box.H BoxLinkDef.h I am stuck here by some strange errors. Here are some examples. Error: No symbol ino64_td_ino in current scope FILE:/usr/include/sys/dirent.h LINE:63 Error: No symbol __extension__typedeflonglong_G_llong in current scope FILE:/usr/local/gnu/install/gcc/2.9.5.2/lib/gcc-lib/sparc-sun-solaris2.6 /2.95.2/../../../../sparc-sun-solaris2.6/include/_G_config.h LINE:20 Any idea? Are these problems caused by those *.H files ? Steps I am to take if (3) succeeds : (4) g++ -O -fPIC -I./ -c -o boxDict.o boxDict.C (5) g++ -O -fPIC -I/home/hp/ROOT/include -c -o myroot.o myroot.C (6) g++ -O myroot.o boxDict.o -L/place/where/libbox.so/is -lbox ..... THanks, HP
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:09 MET