yes, use .L myclass.cxx+ command, which generates a dictionary for your class, compiles teh dictionary and the original file and loads in a shared lib. Pragma of use: #pragma includepath my_include_path I'm using ROOT 2.24/03 and in that old version this procedure works only if the loaded script resides in CURRENT directory. Otherwise ROOT script compiler doesn't generate a dictionary, however it honestly does the rest (compiles the class and loads in the .so file), which is extremely confusing. Could somebody check that this is fixed in 2.25? Also some time ago Jacek Holecek reported a still (?) undocumented but extremely useful feature of CINT: one can UNLOAD a shared lib w/o leaving a ROOT session. The steps include: root [0] .L DataVal.C+ root [1] .files ... snip 10 fp=0x 0 lines=0 file="/cdf/data02/s5/mc/murat/online/./DataVal.so" root [2] .U /cdf/data02/s5/mc/murat/online/./DataVal.so It is essential that the name of the unloaded library is exactly what CINT thinks it is. -best, Pasha "George A. Heintzelman" wrote: > > Rooters, > > Is there any way to use the script compiler to load a class which is > declared in a .h file and defined in a .cxx file? I would like very > much to use this to make such shared libraries without having to make a > lot of subsidiary link files and such things, for quickly working with > a class that I plan eventually to go into full libraries. > > Is there an easy way to do this? > > Thanks, > > George Heintzelman > gah@bnl.gov
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:35 MET