scikit-hep / root_pandas

A Python module for conveniently loading/saving ROOT files as pandas DataFrames
MIT License
109 stars 35 forks source link

Problem installing root_pandas with anaconda #58

Closed renaudin closed 6 years ago

renaudin commented 6 years ago

Hi everyone, I'm trying to set up a conda environment with ROOT and root_pandas installed using the latest miniconda on my laptop. I didthe installation of ROOT in a fresh environment with success but when I'm trying to install root_pandas using pip install root_pandas --no-binary root_numpy, I have the following error:

selection_038

Did you already encounter such problem? Or does one of you have a workable setup of latest anaconda with root_pandas ?

Thank you very much for your help !

eduardo-rodrigues commented 6 years ago

Hi, I have not encountered this problem. But it is certainly a strange one since your compiler is not finding basic things such as libm and libc :S. I would try and debug in that direction, meaning, where are these libraries in your setup ...

chrisburr commented 6 years ago

How are you installing root? Can you give a full list of the commands used to create the environment?

renaudin commented 6 years ago

Thank you for spotting missing libraries, I will look at it. I tried two things for installing ROOT, conda install -c chrisburr root and also installing it from NLesC, with the same result.

I also tried to install missing libraries with conda install gxx_linux-64 but I was then unable to find the packages installed in my env, only the root ones were found.

renaudin commented 6 years ago

So, using conda install gxx_linux-64, I was able to install both root_numpy and root_pandas but when I try to import root_numpy (or root_pandas), I have the following error:

selection_039 Do you have any hint ? Thanks in advance,

chrisburr commented 6 years ago

Are you using pip install --no-binary root_numpy .... still?

renaudin commented 6 years ago

Yes I am. I'm trying to install root only after installing gxx_linux-64, hoping it will use this compiler.

chrisburr commented 6 years ago

What does which gcc and gcc --version give you?

renaudin commented 6 years ago

It gives me: /home/renaudin/miniconda3/envs/cern/bin/gcc gcc (GCC) 4.8.3 20140120 (prerelease)

My guess is that gcc and the conda cross-platform compiler are in conflict and the first one is picked for root then packages are compiled with the second.

renaudin commented 6 years ago

I also tried to install your root without depencies, in hope that only x86_64-conda_cos6-linux-gnu-c++ will be used, but I'm stuck with the same error. And if I don't install gxx_linux-64, I have a compiler error during the root_numpy installation.

renaudin commented 6 years ago

Just to close the issue, I was able to install root_pandas getting back to Anaconda3-4.4.0. I would be extremely interested if someone is able to make it work with latest anaconda but for the time being, this is all I need. Many thanks for your help !

chrisburr commented 6 years ago

Thanks for reporting back. A few months ago (v5?) conda made major changes to the way gcc is used. It should be much better, but I'm not aware of anyone who has made an updated ROOT package yet. If anyone would like to I'd be happy to share my ideas for making it in a more maintainable way.