Aclic compilation

root [0] .L whatToHell.cpp++ Info in <TUnixSystem::ACLiC>: creating shared library /home/assova/source/daq/dbr/./whatToHell_cpp.so root [1] hell() ok iostream root [2] gSystem->Load("libTreePlayer"); root [3]

lost?!

ok.

now we know that
ACLiC works in some cases
libTreePlayer is loadable
if ACLiC tries to link with libTreePlayer, it does not work.

What is the command line used by ACLiC to compiler in the case where testing.cxx (whatToHell.cpp) contains a reference to TTreeFormula.

Philippe.

Info in <ACLiC>: compiling the dictionary and script files Info in <ACLiC>: cd /home/assova/source/daq/dbr/. ; CC -c -O -KPIC -I/usr/openwin/include -ptr/home/kammer/ROOT/compile/root -Iinclude -I$ROOTSYS/include -I"/opt2/ROOT.5.08.00-SunOS5.10/include" -I/home/assova/source/daq/dbr/. -I/home/assova/source/daq/dbr /home/assova/source/daq/dbr/./aaaryaWBd.cxx ; CC /home/assova/source/daq/dbr/./aaaryaWBd.o -G -ptr/home/kammer/ROOT/compile/root -O /opt2/ROOT.5.08.00-SunOS5.10/lib/libGX11.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libGui.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libGX11TTF.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libMinuit.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libPostscript.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libHtml.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libTreePlayer.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libCore.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libCint.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libHist.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libGraf.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libGraf3d.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libGpad.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libTree.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libMatrix.so /opt2/ROOT.5.08.00-SunOS5.10/lib/libRint.so -o /home/assova/source/daq/dbr/./whatToHell_cpp.so Info in <TPluginManager::FindHandler>: did not find plugin for class TSystem and uri /home/assova/source/daq/dbr/./whatToHell_cpp.so Info in <ACLiC>: loading the shared library dlopen error: ld.so.1: /opt2/ROOT.5.08.00-SunOS5.10/bin/root.exe: fatal: relocation error: file /opt2/ROOT.5.08.00-SunOS5.10/lib/libTreePlayer.so: symbol __1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6MX_r1_: referenced symbol not found Load Error: Failed to load Dynamic link library /home/assova/source/daq/dbr/./whatToHell_cpp.so

But one line up

Info in <TCint::AutoLoadCallback>: loaded library libTreePlayer.so for class TTreePlayer Info in <TUnixSystem::Load>: loaded library /opt2/ROOT.5.08.00-SunOS5.10/lib/libTreePlayer.so, status 0 Info in <ACLiC>: compiling the dictionary and script files

I still do not know why it does not work (but it might have to do with the way the compiler is handling the template instantiation :frowning: … without access to the machine I would not be able to investigate further) but I think the following would make the problem disappear:TString cmd = gSystem->GetMakeSharedLib(); cmd.ReplaceAll("$LinkedLibs",""); gSystem->SetMakeSharedLib(cmd);(to be issued once per session before the first ACLiC command.

Cheers,
Philippe

Thank you, Philippe,

it does the job but I still do not understand all of it.

Cheers, Galina