scikit-hep/root_numpy

Import fails with root 6.08 release candidate

maxnoe opened this issue · 5 comments

Today I tried installing root_numpy with the relase candidate for 6.08 (python 3 bug fix)

When I try to import root_numpy, I get:

In [1]: import root_numpy
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-dcbd7d82c6fe> in <module>()
----> 1 import root_numpy

/home/smd/.local/anaconda3/lib/python3.5/site-packages/root_numpy/__init__.py in <module>()
     38     del numpy_version_at_install
     39 
---> 40 from ._tree import (
     41     root2array, root2rec,
     42     tree2array, tree2rec,

/home/smd/.local/root6/lib/ROOT.py in _importhook(name, *args, **kwds)
    301       except Exception:
    302          pass
--> 303    return _orig_ihook( name, *args, **kwds )
    304 
    305 __builtin__.__import__ = _importhook

/home/smd/.local/anaconda3/lib/python3.5/site-packages/root_numpy/_tree.py in <module>()
      4 
      5 from .extern.six import string_types
----> 6 from . import _librootnumpy
      7 
      8 

/home/smd/.local/root6/lib/ROOT.py in _importhook(name, *args, **kwds)
    301       except Exception:
    302          pass
--> 303    return _orig_ihook( name, *args, **kwds )
    304 
    305 __builtin__.__import__ = _importhook

/home/smd/.local/root6/lib/ROOT.py in _importhook(name, *args, **kwds)
    301       except Exception:
    302          pass
--> 303    return _orig_ihook( name, *args, **kwds )
    304 
    305 __builtin__.__import__ = _importhook

ImportError: /home/smd/.local/anaconda3/lib/python3.5/site-packages/root_numpy/_librootnumpy.cpython-35m-x86_64-linux-gnu.so: undefined symbol: _ZN10TClassEdit14ResolveTypedefEPKcb
ndawe commented

Building that ROOT release now to check

ndawe commented

Actually, I'm not seeing this problem. Did you check that you in fact uninstalled root_numpy before building it from scratch again and reinstalling it?

ndawe commented

"undefined symbol" typically means it's still the old .so that was built against the previous version of ROOT you had.

I made sure I uninstall root_numpy. I also tried with a fresh conda environment.

Sorry, my bad. It was the pip cache. I had to reinstall with pip install --no-cache root_numpy. Uninstall is not enough as then only the already built wheel is used.