It seems I’m doing something wrong with the installation of custom ROOT libs, but I can’t se where and why.
I made a small example one can find here:
git clone https://github.com/YPatois/root_test.git
cd root_test
./test1.sh
The small test1.sh scripts do (assuming root has been configured):
Compile a small “unTest.so” lib b(under pwd/build), and install it (under pwd/local")
Run the test1.C script, that just load that lib once (it works)
Erase the source .h file (not the installed ones)
Run again test1.C and one (and only one) of the .h file is not found (it’s only looked for at source location, the other being rightly find at install location).
I don’t understand that behavior. The only thing that I could see is that the source file location is hardcoded in the pcm file, which is not very useful, as they are then installed, and may be where that incorrect patrh is taken from (but then why only for one file?).
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Missing FileEntry for /home/ubuntu/rootdev/forum/YannickPatois/root_test/TTAB.h
requested to autoload type TTMAB
I’m back on that topic after a year, but still no solution.
How does one compile, link and install a root based software?
I looked again in the doc, or elsewhere, I couldn’t find anything.
As one can see from my little example, “make install” is not producing a working app.
What do I miss?
Thanks.
I finally found out: the ROOT macros misbehaves on GLOB() directives, but it’s clearly illustrated on the latest version of my github code.
Replacing GLOB() by the list makes it work.