Hi Christian, Christian Holm Christensen wrote: > > Hi Rene, > > On Wed, 2004-05-26 at 08:41, Rene Brun wrote: > > Hi Christian, > > > > In ROOT version 4.00/04 you can > > ./configure --enable-explicitlink > > to solve the problem discussed in your mail. > > Ah, so you implemented it. I remember Fons and I discussed that some > time ago. Masa implemented the feature in CINT directly. Fons adapted it to ROOT. > > I hope you remember to set the `rpath' when `--enable-rpath' is given to > `configure' - otherwise, it's pretty meaningless. did you try? it should be OK. > > However, it doesn't change the fact that users have to, by hand specify > the ROOT libraries the client libraries depend on. No. When ROOT has been installed with --enable-explicitlink, you do not need to specify all the libs, only the top level lib. > > > Also note that with the version currently in CVS, the automatic loading > > of a shared lib is implemented, eg > > root > TLorentzVector v; > > This statement in CINT will automatically do gSystem->Load("libPhysics"); > > But that's an entirely different issue. This has to do with your plugin > manager. I think I brought up the issue some time ago with Fons, that > the plugin manager should really be used more heavily. What I had in > mind, was that libraries like `libFumili' are really plugins and not > libraries at all. Hence, they should live in a separate directory > (e.g., <prefix>/lib/root/plugins), and really be linked like `libtool > -module' would do (on windows, a dll without a corresponding lib file). I do not understand this point. libFumili is already used as a plug-in see the list of plugins in system.rootrc. > > Maybe, you could extent the system.rootmap functionality a bit further, > so that clients can add more files of that type to some directory > (/etc/root/plugins), as well as some place to look for additional files > with lines like `+Plugin.<...> ......'. In that way, client code can > easily integrate it's code into ROOT. This is already done (Fons). It will be documented in the Release notes. Users can take advantage of the new tool $ROOTSYS/bin/rlibmap to create their own map. See the Root makefile for an example. > > > The rootmap file contains all the dependencies for a given class > > and the corresponding shared libs will be loaded in the right order. > > Basically the output of `nm -C', massaged a bit, right? well, if you like. Except that the world is more than just Linux. ::) Rene Brun > > Yours, > > -- > ___ | Christian Holm Christensen > |_| | ------------------------------------------------------------- > | | Address: Sankt Hansgade 23, 1. th. Phone: (+45) 35 35 96 91 > _| DK-2200 Copenhagen N Cell: (+45) 24 61 85 91 > _| Denmark Office: (+45) 353 25 404 > ____| Email: cholm@nbi.dk Web: www.nbi.dk/~cholm > | |
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:08 MET