While testing my library on my Intel MacBook Pro, my old G4 PowerBook and on a laptop with FC4,
see topic “TRootGuiFactory not found?”, I also tested the libraries in root/test.
Using the new root version 5.15/09 on MacBook, PowerBook and FC4 resulted in the following error:
“Load Error: Failed to load Dynamic link library /Volumes/CoreData/ROOT/root/test/./Hello.so”
In contrast, using the old root version 5.15/01 everything was ok!
Could it be that there may be a problem with “Makefile.arch”?
Compiled on 13 June 2007 for macosx with thread support.
CINT/ROOT C/C++ Interpreter version 5.16.20, June 1, 2007
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] gSystem.Load(“Hello”)
dlopen error: dlopen(/Volumes/CoreData/ROOT/root/test/./Hello.so, 9): Symbol not found: __ZThn28_N5TText8StreamerER7TBuffer
Referenced from: /Volumes/CoreData/ROOT/root/test/./Hello.so
Expected in: dynamic lookup
Load Error: Failed to load Dynamic link library /Volumes/CoreData/ROOT/root/test/./Hello.so
(int)(-1)
*** Interpreter error recovered ***
root [1] .q
FreeType Engine v2.1.9 used to render TrueType fonts.
Compiled on 17 December 2006 for macosx with thread support.
CINT/ROOT C/C++ Interpreter version 5.16.16, November 24, 2006
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] gSystem.Load(“Hello”)
(int)0
root [1] Hello h
root [2] .q
Hi,
some libraries were split between these two versions, and some classes are thus not available automatically at start anymore. You will need to load libGraf (that’s where the missing TText symbol is in) before you can load Hello.so.
Axel.
Please allow me to make the following suggestion:
Whenever the R developers publish a new version of R, they have scripts which automatically check all R packages for errors.
Maybe the ROOT developers could also create such a script, which automatically runs all tutorials and test examples?
In this way these errors could be detected automatically.
Furthermore, my real problem is that the new ROOT version is unable to load my own library, see: root.cern.ch/phpBB2/viewtopic.ph … bffb01aef4
Something must have been changed between these two ROOT versions.
Maybe, you have some suggestions?
Sorrowly, I did not test your suggetion before, because your suggestion does not solve the problem.
Now “Hello h” gives a similar error, as shown below.
Could there be a problem with the PluginHandler?
Why do I get "Error in TPluginHandler::SetupCallEnv: " when I try to load my library?
Compiled on 13 June 2007 for macosx with thread support.
CINT/ROOT C/C++ Interpreter version 5.16.20, June 1, 2007
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] gSystem.Load(“libGraf.so”)
(int)0
root [1] gSystem.Load(“Hello”)
(int)0
root [2] Hello h
dyld: lazy symbol binding failed: Symbol not found: __ZN7TCanvasC1EPKcS1_iiii
Referenced from: /Volumes/CoreData/ROOT/root/test/./Hello.so
Expected in: dynamic lookup
dyld: Symbol not found: __ZN7TCanvasC1EPKcS1_iiii
Referenced from: /Volumes/CoreData/ROOT/root/test/./Hello.so
Expected in: dynamic lookup
[quote=“cstrato”]Now “Hello h” gives a similar error, as shown below.
root [1] gSystem.Load(“Hello”)
(int)0
root [2] Hello h
dyld: lazy symbol binding failed: Symbol not found: __ZN7TCanvasC1EPKcS1_iiii
Referenced from: /Volumes/CoreData/ROOT/root/test/./Hello.so
Expected in: dynamic lookup
dyld: Symbol not found: __ZN7TCanvasC1EPKcS1_iiii
Referenced from: /Volumes/CoreData/ROOT/root/test/./Hello.so
Expected in: dynamic lookup[/quote]
Sorry, you’ll have to load libGui (it will in turn also load libGraf).
[quote=“cstrato”]Could there be a problem with the PluginHandler?
Why do I get "Error in TPluginHandler::SetupCallEnv: " when I try to load my library?[/quote]
I’ll ask Fons to have a look at your problem.
[quote=“cstrato”]Please allow me to make the following suggestion:
Whenever the R developers publish a new version of R, they have scripts which automatically check all R packages for errors.
Maybe the ROOT developers could also create such a script, which automatically runs all tutorials and test examples?
In this way these errors could be detected automatically.[/quote]
We have these scripts - in fact I’m not doing much but running these scripts since about 7 days, for the upcoming production release. A large scale project like ROOT would not survive without…
The reason why you think these backward incompatibilities are test failures is because we did not yet manage to update the test directory to use rootmap files. Also check the release notes, which always point out the very few backward incompatibilities - usually in big red letters.