Closed jpivarski closed 7 months ago
I'm in a new conda environment with no ROOT in my environment.
Then where does this lib /home/jpivarski/mambaforge/lib/libCling.so
come from? Seems to be located outside any environment (which would be under $HOME/mambaforge/envs
). As well, libCling
during the build should live in the build directory and under cppyy_backend
after install. It should not appear under mambaforge\lib
.
I also really don't understand the error. It seems to suggest that libCling.so
is looking for TInterpreterLookupHelper
, which doesn't make any sense as the latter lives in libCoreLegacy.so
. What does:
$ ldd /home/jpivarski/mambaforge/lib/libCling.so
and:
$ nm /home/jpivarski/mambaforge/lib/libCling.so |& grep _ZTIN10TClassEdit24TInterpreterLookupHelperE
show?
As for the gcc12 warnings; I'm working on them atm.; there's a simple fix in ROOT.
Also to add, nothing in cppyy is going to look for TClassEdit::TInterpreterLookupHelper
. If anything, it would look for CppyyLegacy::TClassEdit::TInterpreterLookupHelper
: the ROOT code left over in cppyy-cling
was modified to live in namespace CppyyLegacy
instead of the global one to prevent clashes with user code as ROOT code is otherwise exposed through the PCH for the benefit of rootcling
.
gcc12 warnings have been mostly fixed in repo.
The gcc12 issues should all be good now with release 3.1.0. Feel free to reopen if you find otherwise.
cppyy 3.1.0: Fantastic! I'll check it out. (Sorry that I haven't gotten back to this, but when I do, I'll do a second test on a virtual machine that has never had ROOT on it.)
I confirm that cppyy 3.1.2 installs without any trouble in a new conda environment. I made this environment with
mamba create --name cppyy python=3.10 awkward uproot vector numba compilers cmake make
to control which compilers are visible in the environment—a suite from conda-forge and not from system paths. (cmake
probably isn't needed, but it's a weird fact that compilers
installs a suite from GCC but not ld
unless you also add the make
package. Without make
, the environment sees cc
etc. from the conda environment and ld
from /usr/bin
, and they conflict.)
So that's great!
Hi, sorry to report this! I tried installing from source using the instructions in
https://cppyy.readthedocs.io/en/latest/installation.html#install-from-source
I'm in a new conda environment with no ROOT in my environment. These are the packages:
(All of my compilers come from conda.)
Here's the output from the pip-install from source:
Incidentally, the symbol that it can't find from libCling.so is
TClassEdit::TInterpreterLookupHelper
, though that's probably just the first in what it's looking for.@vgvassilev thinks it could have something to do with rtti.