Hi,
I’m attempting to install ROOT with multiple versions of python on a university research computing cluster. The system’s administrators already have 2 versions of python installed in a common directory (v2.6 and v3.0). I have installed my own version of python to use with ROOT. I first attempted to do this with ROOT v5.28 and python v2.7 and attempted the following:
To build python:
./configure --enable-shared --prefix=/software_directory/python_usr_2.7
gmake
gmake altinstall
To build root:
./configure linuxx8664gcc --enable-python
–enable-roofit
–with-python-libdir=/software_directory/python_usr_2.7/lib
–with-python-incdir=/software_directory/python_usr_2.7/include/python2.7
and that’s where I get my problem… if I look in my config.log I see:
…
Checking for Python.h …
Checking in directory /software_directory/python_usr_2.7/include/python2.7
Checking for Python.h in directory /software_directory/python_usr_2.7/include/python2.7
/software_directory/python_usr_2.7/include/python2.7/Python.h is read-able
Checking for python2.6, libpython2.6, libpython, python, or Python …
libraries to check for: python2.6.so python2.6.sl python2.6.dylib python2.6.dll.a libpython2.6.so libpython2.6.sl libpython2.6.dylib libpython2.6.dll.a libpython.so libpython.sl libpython.dylib libpython.dll.a python.so python.sl python.dylib python.dll.a Python.so Python.sl Python.dylib Python.dll.a python2.6.a python2.6.lib python2.6 libpython2.6.a libpython2.6.lib libpython2.6 libpython.a libpython.lib libpython python.a python.lib python Python.a Python.lib Python
Checking in directories /software_directory/python_usr_2.7/lib64 /software_directory/python_usr_2.7/lib for python2.6.so python2.6.sl python2.6.dylib python2.6.dll.a libpython2.6.so libpython2.6.sl libpython2.6.dylib libpython2.6.dll.a libpython.so libpython.sl libpython.dylib libpython.dll.a python.so python.sl python.dylib python.dll.a Python.so Python.sl Python.dylib Python.dll.a python2.6.a python2.6.lib python2.6 libpython2.6.a libpython2.6.lib libpython2.6 libpython.a libpython.lib libpython python.a python.lib python Python.a Python.lib Python
Checking for library python2.6.so in directory /software_directory/python_usr_2.7/lib
Checking /software_directory/python_usr_2.7/lib/python2.6.so
python2.6.so not found in /software_directory/python_usr_2.7/lib
…
And there is my problem… even though I am using python v2.7.x ROOT is looking for python v2.6.x associated library files, and thus can’t find them.
And if ROOT would look for python2.7.so it would find it in /software_directory/python_usr_2.7/lib
And if I continue and do >make to ROOT and try to start up PyROOT it errors (as expected) and says it can’t find libPyROOT:
error in TUnixSystem::DynamicPathName: libPyROOT[.so | .sl | .dl | .a | .dll] does not exist in /software_directory/root-5.28/lib:/software_directory/root-5.28/lib:/software_directory/python_usr_2.7/lib:/software_directory/python_usr_2.7/lib::.:/software_directory/root-5.28/lib::/software_directory/root-5.28/cint/cint/stl
(int)(-1)
It’s like the python v2.6 that the system’s administrators have already on the system is over-riding my version of python at points.
And when I try the same exact thing but with Python v2.6 (rather than v2.7) everything compiles fine and PyROOT works (which is what I expect since I know no matter what version of Python I tell ROOT to use it still looks for the PyROOT libraries associated w/version 2.6).
Any suggestions on what I can do?
Thanks!
~Jacquie