Hi there. I am pretty sure that I’m not the first one to mention this error occur, but I’d like to know how to deal with it in details (what I couldn’t find on internet so far). When I tried to compile a .cxx with -lMathMore flag, it immediately said
/usr/bin/ld: cannot find -lMathMore
I found on the web that I should compile that library first, but my understanding at what am I supposed to do in this case is weak. Could you please provide step-by-step solution for this (bet it would be useful for other people wondering as well)? Also, could you please tell whether it is possible to create custom set of libraries I’d like to use (e.g. unite --glibs and -lMathMore in one flag)? And the last one, how in general do I know which flag contains which library? I mean, when I looked into ROOT: Special functions , I couldn’t tell without additional googling that I am supposed to flag lMathMore.
Please consider me as a person without experience in related topics. Thanks for any help.
What do you mean “to remove -lMathMore from the invocation”?
I kinda needed some stuff from SpecFunc, but, for a moment, I was able to resolve my needs without it (e.g. used TMath::BesselI0). When I tried to call something from ROOT::Math, my luck ran out. So I’d like to be sure that I know how to actually access stuff from SpecFunc.
OK then let’s go back to what Wile_E proposed. You can download the binary builds we offer for instance for Ubuntu 20.04. You can untar this into a new directory; it will not affect other ROOT installations on your disk.
Thanks for suggestion but could you please explain what do I do exactly? From instruction on Installing ROOT - ROOT I can’t figure how do I get MathMore by downloading this distribution? Am I supposed to install it like usual and use it instead of a previous one? Or am I supposed to import something from here somehow?
You currently have ROOT somewhere. Stop using that and instead rebuild your software with the ROOT version you downloaded and unpacked, possibly providing ROOT’s new location to the configuration of the software, or editing the Makefile, or simply calling source wherever-you-unpacked-ROOT/bin/thisroot.sh and then rebuilding your software - it depends on how its build system finds ROOT. That should be all.