problem installing root_numpy
wiso opened this issue · 37 comments
Hello, I have installed a new version of ROOT and now I am not able to reinstall root-numpy, even for the old version of ROOT.
I am installing it with: pip install --user root_numpy
gcc++ 5.3.1
ROOT 6.06/08 (but also with 6.02)
numpy 1.11.1
Python 2.7.11
when importing root_numpy I get:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/turra/.local/lib/python2.7/site-packages/root_numpy/__init__.py", line 40, in <module>
from ._tree import (
File "/home/turra/root-6.06.08/lib/ROOT.py", line 303, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/home/turra/.local/lib/python2.7/site-packages/root_numpy/_tree.py", line 6, in <module>
from . import _librootnumpy
File "/home/turra/root-6.06.08/lib/ROOT.py", line 303, in _importhook
return _orig_ihook( name, *args, **kwds )
ImportError: /home/turra/.local/lib/python2.7/site-packages/root_numpy/_librootnumpy.so: undefined symbol: _ZN10TClassEdit14ResolveTypedefB5cxx11EPKcb
How do you have both versions of ROOT setup? The easiest thing to do is to use virtual environments with a specific ROOT set up for each one. EG: http://docs.python-guide.org/en/latest/dev/virtualenvs/
You have to make sure you completely uninstall the root_numpy
package first before trying to re-install it. I have no issues with 4 different ROOT versions on my computer as long as I have my paths set up correctly and I use virtual environments to split out my python stuff.
Yes, I have fully uninstalled root_numpy:
pip2 uninstall root-numpy
sudo pip2 uninstall root-numpy
I setup ROOT simply by
cd ~/root-6.06.08/bin
source this_root.sh
install
pip2 install --user root-numpy
python2
import root_numpy
...
ImportError: /home/turra/.local/lib/python2.7/site-packages/root_numpy/_librootnumpy.so: undefined symbol: _ZN10TClassEdit14ResolveTypedefB5cxx11EPKcb
Can you run python -c "import ROOT; print ROOT.__file__
just to make sure you're using the right ROOT?
here it is:
python -c "import ROOT; print ROOT.__file__"
/home/turra/root-6.06.08/lib/ROOT.pyc
I tried with virtualenv, same problem
I have success with ROOT-6.06.00. Are you sure it cannot be a problem of ABI with gcc 5.3.1? I had some issues in the past with ROOT and gcc5
Is it safe to mix pip and pip2? Are you using pip2 from here https://pypi.python.org/pypi/pip2/0.0.1.dev1 ? pip2 looks dead and might not be uninstalling packages correctly.
Is it safe to mix pip and pip2? Are you using pip2 from here https://pypi.python.org/pypi/pip2/0.0.1.dev1 ? pip2 looks dead and might not be uninstalling packages correctly.
That would be a good point. Although it seems he's installing it locally into ~/.local
so I'm not expecting them to conflict since it's all about setting up your paths at that point. I think it's just seeing the wrong python version.
pip and pip2 are identical:
diff /usr/bin/pip /usr/bin/pip2
Ah, it's just pip for python 2. Sorry. Then...
Be sure that /home/turra/.local/lib/python2.7/site-packages/ is completely empty of anything root_numpy and then install again. Is that what you did?
sure. I will try to reinstall ROOT compiling it, instead of using the precompiled binaries
@wiso -- try using Homebrew if you're on a mac. It's got previous versions of ROOT and can help manage switching between the versions.
Hi @wiso. I had the same error.
Try changing default gcc to version 4.8 and then
git clone git://github.com/rootpy/root_numpy.git
cd root_numpy
python setup.py install
Closing for now. Feel free to reopen if needed.
Hi, I have the exact same problem and would be VERY interested in a solution! @wiso could you share your solution?
I am using Python3.5 and have tried different ROOT, NumPy with no success.
I install with
pip3 install root_numpy --user
and then test with
python3 -c "import root_numpy"
and what I get is
Traceback (most recent call last):
File "", line 1, in
File "/home/chrisbo/.local/lib/python3.5/site-packages/root_numpy/init.py", line 51, in
from ._tree import (
File "/home/chrisbo/ROOT/v6-09-02_python3/lib/ROOT.py", line 318, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/home/chrisbo/.local/lib/python3.5/site-packages/root_numpy/_tree.py", line 6, in
from . import _librootnumpy
File "/home/chrisbo/ROOT/v6-09-02_python3/lib/ROOT.py", line 318, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/home/chrisbo/ROOT/v6-09-02_python3/lib/ROOT.py", line 318, in _importhook
return _orig_ihook( name, *args, **kwds )
ImportError: /home/chrisbo/.local/lib/python3.5/site-packages/root_numpy/_librootnumpy.cpython-35m-x86_64-linux-gnu.so: undefined symbol: _ZN10TClassEdit14ResolveTypedefB5cxx11EPKcb
@uitty400 did you make sure ROOT is compiled with python3 and not python2 only? Have you tried python3 -c "import ROOT"
? Also, can you list all the packages you have installed (pip3 list
)? If numpy, for example, is installed before you installed ROOT, it might not play right with root_numpy if the compiler changed between installations for example.
Thanks for the quick reply, yes ROOT ist compiled with python3. I am using gcc4.8. Importing ROOT works. I am using ROOT v6.08.06. But I have also tried with v6.09.02 without success.
Numpy was installed before ROOT but I have tried uninstalling and installing again, even with numpy1.11.0 instead of numpy1.12.1. Compiler should not have changed anyway.
python3 -c "import ROOT; print(ROOT.__file__)"
yields
Warning in TInterpreter::ReadRootmapFile: class TUnfold found in libUnfold.so is already in libHist.so
Warning in TInterpreter::ReadRootmapFile: class TUnfoldBinning found in libUnfold.so is already in libHist.so
Warning in TInterpreter::ReadRootmapFile: class TUnfoldDensity found in libUnfold.so is already in libHist.so
Warning in TInterpreter::ReadRootmapFile: class TUnfoldSys found in libUnfold.so is already in libHist.so
/home/chrisbo/ROOT/v6-08-06_python3/lib/ROOT.py
pip list
is:
appdirs (1.4.3)
apturl (0.5.2)
beautifulsoup4 (4.4.1)
bleach (2.0.0)
blinker (1.3)
Brlapi (0.6.4)
chardet (2.3.0)
checkbox-support (0.22)
command-not-found (0.3)
cryptography (1.2.3)
cycler (0.10.0)
decorator (4.0.11)
defer (1.0.6)
devscripts (2.16.2ubuntu3)
entrypoints (0.2.2)
feedparser (5.1.3)
guacamole (0.9.2)
html5lib (0.999999999)
httplib2 (0.9.1)
idna (2.0)
ipykernel (4.6.1)
ipython (6.0.0)
ipython-genutils (0.2.0)
ipywidgets (6.0.0)
jedi (0.10.2)
Jinja2 (2.9.6)
jsonschema (2.6.0)
jupyter (1.0.0)
jupyter-client (5.0.1)
jupyter-console (5.1.0)
jupyter-core (4.3.0)
language-selector (0.1)
louis (2.6.4)
lxml (3.5.0)
Magic-file-extensions (0.2)
Mako (1.0.3)
MarkupSafe (1.0)
matplotlib (2.0.0)
mistune (0.7.4)
mpmath (0.19)
nbconvert (5.1.1)
nbformat (4.3.0)
nose (1.3.7)
notebook (5.0.0)
numpy (1.12.1)
oauthlib (1.0.3)
onboard (1.2.0)
packaging (16.8)
padme (1.1.1)
pandas (0.19.2)
pandocfilters (1.4.1)
pexpect (4.2.1)
pickleshare (0.7.4)
Pillow (3.1.2)
pip (9.0.1)
plainbox (0.25)
prompt-toolkit (1.0.14)
ptyprocess (0.5.1)
pyasn1 (0.1.9)
pycups (1.9.73)
pycurl (7.43.0)
Pygments (2.2.0)
pygobject (3.20.0)
PyJWT (1.3.0)
pyparsing (2.2.0)
python-apt (1.1.0b1)
python-dateutil (2.6.0)
python-debian (0.1.27)
python-systemd (231)
pytz (2017.2)
pyxdg (0.25)
pyzmq (16.0.2)
qtconsole (4.3.0)
reportlab (3.3.0)
requests (2.9.1)
root-numpy (4.7.2)
scikit-learn (0.18.1)
scipy (0.19.0)
sessioninstaller (0.0.0)
setuptools (35.0.1)
simplegeneric (0.8.1)
six (1.10.0)
sklearn (0.0)
sympy (1.0)
system-service (0.3)
terminado (0.6)
testpath (0.3)
tornado (4.5.1)
traitlets (4.3.2)
ubuntu-drivers-common (0.0.0)
ufw (0.35)
unattended-upgrades (0.1)
unity-scope-calculator (0.1)
unity-scope-chromiumbookmarks (0.1)
unity-scope-colourlovers (0.1)
unity-scope-devhelp (0.1)
unity-scope-firefoxbookmarks (0.1)
unity-scope-gdrive (0.7)
unity-scope-manpages (0.1)
unity-scope-openclipart (0.1)
unity-scope-texdoc (0.1)
unity-scope-tomboy (0.1)
unity-scope-virtualbox (0.1)
unity-scope-yelp (0.1)
unity-scope-zotero (0.1)
unity-tweak-tool (0.0.7)
urllib3 (1.13.1)
usb-creator (0.3.0)
virtualenv (15.0.1)
wcwidth (0.1.7)
webencodings (0.5.1)
widgetsnbextension (2.0.0)
xdiagnose (3.8.4.1)
xkit (0.0.0)
XlsxWriter (0.7.3)
Anybody have an idea? Meanwhile I tried with a clean virtualenv without success. I tried building from source from the git repo without success. While running python setup.py install
I get a few warnings:
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
#warning "Using deprecated NumPy API
:
.......
running build_ext
building 'root_numpy._librootnumpy' extension
creating build/temp.linux-x86_64-3.5
creating build/temp.linux-x86_64-3.5/root_numpy
creating build/temp.linux-x86_64-3.5/root_numpy/src
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iroot_numpy/src -I/usr/include/python3.5m -I/h
ome/chrisbo/.virtualenvs/tmva_sklearn/include/python3.5m -I/home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include -c root_numpy/src/_librootnumpy.cpp -o build/temp.linux-x86_64-3.5/root_numpy/sr
c/_librootnumpy.o -pthread -std=c++11 -m64 -I/home/chrisbo/ROOT/v6-08-06_python3/include -Wno-unused-function -Wno-write-strings
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
In file included from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/ndarraytypes.h:1788:0,
from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from root_numpy/src/librootnumpy.cpp:449:
/home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1
7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by "
^
x86_64-linux-gnu-g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FOR
TIFY_SOURCE=2 build/temp.linux-x86_64-3.5/root_numpy/src/_librootnumpy.o -o build/lib.linux-x86_64-3.5/root_numpy/_librootnumpy.cpython-35m-x86_64-linux-gnu.so -L/home/chrisbo/ROOT/v6-08-06_python3/lib -lCore -lRIO -lNet -lHis
t -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lMultiProc -pthread -lm -ldl -rdynamic -lTreePlayer
building 'root_numpy.tmva._libtmvanumpy' extension
creating build/temp.linux-x86_64-3.5/root_numpy/tmva
creating build/temp.linux-x86_64-3.5/root_numpy/tmva/src
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DNEW_TMVA_API -Iroot_numpy/src -Iroot_numpy/tm
va/src -I/usr/include/python3.5m -I/home/chrisbo/.virtualenvs/tmva_sklearn/include/python3.5m -I/home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include -c root_numpy/tmva/src/_libtmvanumpy.cpp -o
build/temp.linux-x86_64-3.5/root_numpy/tmva/src/_libtmvanumpy.o -pthread -std=c++11 -m64 -I/home/chrisbo/ROOT/v6-08-06_python3/include -Wno-unused-function -Wno-write-strings
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
In file included from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/ndarraytypes.h:1788:0,
from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from root_numpy/tmva/src/libtmvanumpy.cpp:449:
/home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1
7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by "
^
x86_64-linux-gnu-g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FOR
TIFY_SOURCE=2 build/temp.linux-x86_64-3.5/root_numpy/tmva/src/_libtmvanumpy.o -o build/lib.linux-x86_64-3.5/root_numpy/tmva/_libtmvanumpy.cpython-35m-x86_64-linux-gnu.so -L/home/chrisbo/ROOT/v6-08-06_python3/lib -lCore -lRIO -
lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lMultiProc -pthread -lm -ldl -rdynamic -lTMVA
running install_lib
creating /home/chrisbo/.virtualenvs/tmva_sklearn/lib/python3.5/site-packages/root_numpy
......
but it seems to still compile successfully. When I try to import again I get:
Traceback (most recent call last):
File "", line 1, in
File "/home/chrisbo/git_repos/root_numpy/root_numpy/init.py", line 51, in
from ._tree import (
File "/home/chrisbo/ROOT/v6-08-06_python3/lib/ROOT.py", line 303, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/home/chrisbo/git_repos/root_numpy/root_numpy/_tree.py", line 6, in
from . import _librootnumpy
ImportError: cannot import name '_librootnumpy'
@uitty400 - so I decided to check what would happen if I installed ROOT but agains python2 instead of python3, and then installed rootnumpy and similar packages against both ROOT and python3. I get the above error message as you for librootnumpy. In particular, I can't get pyroot working (as expected):
>>> import ROOT
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/root6/6.08.02/lib/root/ROOT.py", line 24, in <module>
import cppyy
File "/usr/local/Cellar/root6/6.08.02/lib/root/cppyy.py", line 60, in <module>
import libPyROOT as _backend
ImportError: dynamic module does not define module export function (PyInit_libPyROOT)
Sorry, I don't follow. This error is occurring from importing ROOT to python3 when ROOT was compiled with python2, right? I don't see how this helps me.
In the documentation it says root_numpy uses the
root-config utility to determine the ROOT compiler/linker flags and include paths.
Is that also the case for pip? When is this root-config file created and how do I make sure I am using the correct root-config file?
The root-config
file is what is used for installing ROOT, e.g. from ./configure
. I can't seem to install ROOT6 on my computer against python3 correctly so I'm not able to troubleshoot this further.
brew install --with-python3 --without-python root6
is what I used. However, what confuses me is that you seem to have ROOT and other things inside the virtualenvironment, but your root-numpy
is imported outside of it. Can you check to see if you don't have a global install of this?
I installed ROOT with python3 from source using first
cmake ../root_git/ -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_INCLUDE_DIR=/usr/include/python3.5m/ -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so
and then
cmake build .
So I never did ./configure
.
I do not have a global install of root-numpy. ROOT isn't in the virtualenv either. I am running source thisroot.sh
of the ROOT I want to use and this sets the ROOTSYS path and others I believe.
How does root-numpy find root-config? In the docu it says:
The installation attempts to run root-config and if unsuccessful then $ROOTSYS/bin/root-config. If root-config still cannot be found, the installation aborts.
What is the first location it looks?
Type root-config
which should be in your path if you source ROOT correctly.
Ok, so I don't know what actually went wrong but I compiled ROOT with gcc5.4 and it worked. So I guess the problem was some shared library which was linked at the wrong place or something with gcc4.8
..
Wow. Just catching up on this issue and glad to see it's finally working! Thanks @kratsg for the help. @uitty400 these issues are fairly common on systems with multiple compilers, ROOTs, and pythons. I wonder if there is something more we can do in root_numpy to automatically detect a mismatched configuration and show a more informative ImportError...
@ndawe - I've been thinking about it. The main problem is that usually, numpy + ROOT + root_numpy all need to work with their shared libraries... so if any of them are off, it throws off the rest (usually). pip
doesn't seem smart enough to handle the wheel dependencies perfectly, but that seems to work just fine if you're using system defaults (on a Mac).
My guess is with the ROOT, we would need to check root-config
which you already do, but then determine if we're using the wrong compiler... and then maybe just crash complaining that it might be possible ROOT was built against a different compiler than what root_numpy
is using?
Hi catching up the same issue. I have the problem while importing the root_numpy in python environment. What I get is
Traceback (most recent call last):
File "", line 1, in
File "/home/binish/.local/lib/python2.7/site-packages/root_numpy/init.py", line 51, in
from ._tree import (
File "/home/binish/root_v6.14.06.Linux-ubuntu18-x86_64-gcc7.3/root/lib/ROOT.py", line 461, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/home/binish/.local/lib/python2.7/site-packages/root_numpy/_tree.py", line 6, in
from . import _librootnumpy
File "/home/binish/root_v6.14.06.Linux-ubuntu18-x86_64-gcc7.3/root/lib/ROOT.py", line 461, in _importhook
return _orig_ihook( name, *args, **kwds )
File "init.pxd", line 872, in init _librootnumpy
ValueError: numpy.ufunc has the wrong size, try recompiling. Expected 192, got 216
Hi catching up the same issue. I have the problem while importing the root_numpy in python environment. What I get is
This is not the same error. File a new issue.
I have a similar problem, I installed root with brew install root --HEAD
and then root_numpy
following the instructions. However I get
>>> import root_numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/root/HEAD-83f01c0/lib/root/ROOT.py", line 533, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/Users/soleti/root_numpy/root_numpy/__init__.py", line 51, in <module>
from ._tree import (
File "/usr/local/Cellar/root/HEAD-83f01c0/lib/root/ROOT.py", line 533, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/Users/soleti/root_numpy/root_numpy/_tree.py", line 6, in <module>
from . import _librootnumpy
ImportError: cannot import name '_librootnumpy' from 'root_numpy' (/Users/soleti/root_numpy/root_numpy/__init__.py)
I read that a solution is to compile root with gcc5.4 but how do I do that with brew? Thanks!
@soleti I'm not sure how you can do it with homebrew. You would have to compile it manually.
@wiso, I'm no Mac user so let me just suggest that you email our forum mailing list or post on the Gitter channel as some of the users there are Mac users … Info all at http://scikit-hep.org/get-in-touch.html. Hope this helps.
I am getting the same issue. I am using python3 (3.6.8), ROOT 6.18.00-py3 in a shared directory (compiled with unknown compiler), root_numpy 4.8.0.
$ python3
Python 3.6.8 |Anaconda custom (64-bit)| (default, Dec 30 2018, 01:22:34)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ROOT
>>> import root_numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/common/software/root/6.18.00-py3/lib/ROOT.py", line 533, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/global/homes/e/elesser/.local/cori/3.6-anaconda-4.4/lib/python3.6/site-packages/root_numpy/__init__.py", line 51, in <module>
from ._tree import (
File "/usr/common/software/root/6.18.00-py3/lib/ROOT.py", line 533, in _importhook
return _orig_ihook( name, *args, **kwds )
File "/global/homes/e/elesser/.local/cori/3.6-anaconda-4.4/lib/python3.6/site-packages/root_numpy/_tree.py", line 6, in <module>
from . import _librootnumpy
File "/usr/common/software/root/6.18.00-py3/lib/ROOT.py", line 533, in _importhook
return _orig_ihook( name, *args, **kwds )
ImportError: /global/homes/e/elesser/.local/cori/3.6-anaconda-4.4/lib/python3.6/site-packages/root_numpy/_librootnumpy.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZNK5TFile12GetCacheReadEP7TObject
Any solution found to this?
Your undefined symbol is TFile::GetCacheRead(TObject*) const
, hence from ROOT, not root_numpy. Are you sure that you can import ROOT and do normal things? The undefined symbol makes me wonder if root_numpy knows about the right ROOT. Did you see the discussions above about making sure that numpy is not installed already with a different compiler than used here for ROOT/root_numpy? I'm afraid it is difficult to debug this with the info you give. Others may have experience?
Are you sure that you can import ROOT and do normal things?
Yes, doing normal things after import ROOT
work fine, e.g. creating a TCanvas & plotting a trial function. But upon import root_numpy
the above error occurs.
The undefined symbol makes me wonder if root_numpy knows about the right ROOT. Did you see the discussions above about making sure that numpy is not installed already with a different compiler than used here for ROOT/root_numpy?
Yes, I've tried uninstalling / reinstalling numpy & root_numpy after module load root
and . thisroot.sh
for this ROOT installation, using nearly every gcc installed on the system (4.9.3, 5.3.0, 6.1.0, 7.3.0, 8.1.1, 8.2.0, 9.1.0) via
python3 -m pip uninstall numpy root_numpy
module unload gcc
module load gcc/<x.x.x>
python3 -m pip install --upgrade --user numpy root_numpy
where <x.x.x> is the gcc version.
I'm afraid it is difficult to debug this with the info you give.
Let me know what additional info is required and I will do my best to provide it.
Thanks for the help!
Ahh, I think I solved it -- the packages weren't rebuilding, just reinstalling previously built packages. Using python -m pip install --user --force-reinstall --ignore-installed --no-binary :all: numpy root_numpy
fixed the issue. Sorry for the confusion...
Happy to hear that, and thanks a lot for posting the solution, which may come in really useful to others!