Library auto-loading

From: Jerome LAURET <jlauret_at_bnl.gov>
Date: Mon, 12 Dec 2005 22:32:17 -0500

        While debugging a variant of
$ROOTSYS/exmples/pythiaExample.C, I came across a side effect of library loading. The macro contained one more function

Bool_t Charged(TMCParticle *p)

    While CINT interpreted the macro, interpretation of TMCParticle loaded libEG.so, libEGPythia.so and libPythia.so respectively even BEFORE the macro entry point was called. Whenever the equivalent of pythiaExample() was called and subsequentely loadLibraries(), the gSystem->Load("$HOME/pythia6/libPythia6") did not do anything (the default installed libPythia6 was already loaded) making it impossible to debug a private version of libPythia6 [unless redefinition of LD_LIBRARY_PATH or similar which may not always be applicable].

        This behavior may potentially be confusing to users. Forward declaration of TMCParticle did not help by the way: the loading still occured contrary to expectations. Is this a known feature or is this a bug ??

        This is seen in 4.04.02 which has the additional known issue of needing a different variant of libPythia6 than previous ROOT versions ...

-- 
              ,,,,,
             ( o o )
          --m---U---m--
              Jerome
Received on Tue Dec 13 2005 - 04:32:33 MET

This archive was generated by hypermail 2.2.0 : Tue Jan 02 2007 - 14:45:14 MET