Allow PyPy to use ROOT (pyroot)
I posted this at https://foss.heptapod.net/pypy/pypy/-/issues/3455, and they recommended to write to this mailing list. ROOT data analysis framework (https://root.cern) is written in C++ (with cppyy Python bindings). I tried to import that in PyPy, and got an error
import ROOT Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/opt/root/cur/lib/ROOT/__init__.py", line 22, in <module> import cppyy File "/opt/root/cur/lib/cppyy/__init__.py", line 64, in <module> libcppyy_mod_name, major, minor)) ImportError: Failed to import libcppyy2_7. Please check that ROOT has been built for Python 2.7
However, I allowed support for Python 2 in ROOT, and python2 imports ROOT fine. That library is in LD_LIBRARY_PATH. Could you please add support of ROOT in PyPy?
Yaroslav,
ROOT data analysis framework (https://root.cern) is written in C++ (with cppyy Python bindings).
not exactly: ROOT uses a fork of cppyy with several local modifications (and it's also very much behind cppyy master). One of them is precisely this:
ImportError: Failed to import libcppyy2_7. Please check that ROOT has been built for Python 2.7
Which is referring to their "multi-python" build, a local "invention." But also, libcppyy is not used in PyPy and should never be loaded directly for portable use. (If they had stayed with standard Python platform tags, they would not have to load it explicitly.)
Could you please add support of ROOT in PyPy?
This really is on the ROOT folk to make their fork compatible with the Python ecosphere, so file a bug report with them. Best regards, Wim -- WLavrijsen@lbl.gov -- +1 (510) 486 6411 -- www.lavrijsen.net
Thanks, Wim! I filed a feature request to ROOT developers (https://github.com/root-project/root/issues/8110). Best regards, Yaroslav 2021-05-06 16:52 GMT+03:00, wlavrijsen@lbl.gov <wlavrijsen@lbl.gov>:
Yaroslav,
ROOT data analysis framework (https://root.cern) is written in C++ (with cppyy Python bindings).
not exactly: ROOT uses a fork of cppyy with several local modifications (and it's also very much behind cppyy master). One of them is precisely this:
ImportError: Failed to import libcppyy2_7. Please check that ROOT has been built for Python 2.7
Which is referring to their "multi-python" build, a local "invention." But also, libcppyy is not used in PyPy and should never be loaded directly for portable use. (If they had stayed with standard Python platform tags, they would not have to load it explicitly.)
Could you please add support of ROOT in PyPy?
This really is on the ROOT folk to make their fork compatible with the Python ecosphere, so file a bug report with them.
Best regards, Wim -- WLavrijsen@lbl.gov -- +1 (510) 486 6411 -- www.lavrijsen.net
-- С уважением, Ярослав Никитенко +7 916 743 3759
participants (2)
-
wlavrijsen@lbl.gov
-
Yaroslav Nikitenko