[ROOT] STL container libs (RE:accessing vars)

From: Masaharu Goto (MXJ02154@nifty.ne.jp)
Date: Tue Oct 24 2000 - 04:59:45 MEST


Hello Fons,

There are 2 things about STL and template class precompilation.

1) It looks like many people are still using ROOT without precompiled
  STL containers included in $CINTSYSDIR/stl/*.dll. This will make things
  much simpler for many users.  Are those files included and/or built in 
  the latest ROOT distribution?  If this is not the case, I recommend 
  installing pure cint also. After the installation $CINTSYSDIR/stl/*.dll
  are created if you use Linux, HP-UX, Solaris, VisualC++, BorlandC++,etc.
  If you find those, copy all of them as $ROOTSYS/cint/stl/*.dll 

2) About compiling template classes with script compiler, I am still not
  sure about the requirement. Will you elaborate what is needed with
  some examples?

Thank you
Masaharu Goto


>For basic types, CINT uses the underlying machine representation. 
>However for complex objects, it is not guaranteed that the object 
>layout will be the same if you have an interpreted class not linked in 
>via the LinkDef mechanism versus the machine's representation. 
>Therefore I recommend always using rootcint (or equivalently the script 
>compiler) for linking in complex types. This is even possible with 
>template classes, though an explicit link is needed for each 
>instantiation on the template parameter, and it doesn't seem to work 
>with the script compiler
>
>(Note to Masaharu/Philippe: It would be really nice if you could load in a 
>compiled template by doing a script compile of a file with an explicit 
>instantiation of the template, eg:
>
>#include <vector.h>
>template class vector<int>;
>
>(as opposed to template <> class vector<int> which is just a name 
>declaration), but this doesn't seem to work right now. It would make pulling
>in needed templates as you work much easier... In fact, if you wanted to go 
>the extra mile and make it automatically do that, it would be even better (bu
t >probably harder, maybe too hard).  
>)



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:35 MET