classification
Title: altinstall with --enable-shared showing incorrect behaviour
Type: behavior Stage:
Components: Build, Installation Versions: Python 2.7
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: ned.deily, ubehera
Priority: normal Keywords:

Created on 2016-08-04 20:02 by ubehera, last changed 2016-08-05 05:04 by ubehera. This issue is now closed.

Messages (4)
msg271997 - (view) Author: umank.behera (ubehera) Date: 2016-08-04 20:02
When I altinstall python 2.7.12 with
./configure --prefix=/opt/python --enable-shared
it comes up as python 2.7.5 (system default python)

But altinstall with
./configure --prefix=/opt/python
it comes up as 2.7.12, what am I missing?

This is on RHEL 7.2

This is not a pathing issue:

Without --enable-shared:
[root@myrig ~]# /opt/python/bin/python2.7 -V
Python 2.7.12

With --enable-shared:
[root@myrig ~]# /opt/python/bin/python2.7 -V
Python 2.7.5
msg271998 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2016-08-04 20:19
No doubt you are running into same problem that is described here: http://stackoverflow.com/questions/12553057/compile-python-2-7-3-from-source-on-a-system-with-python-2-7-already

The problem is, that on most Unix systems (with the notable exception of Mac OS X), the path to shared libraries is not an absolute path.  So, if you install Python in a non-standard location, which is the right thing to do so as not to interfere with a system Python of the same version, you will need to configure in the path to the shared library or supply it via an environment variable at run time, like LD_LIBRARY_PATH.  You may be better off avoiding --enable-shared; it's easy to run into problems like this with it.
msg272011 - (view) Author: umank.behera (ubehera) Date: 2016-08-05 04:50
As Ned Deily mentioned, this fixes the issue:
./configure --enable-shared --prefix=/opt/python LDFLAGS=-Wl,-rpath=/opt/python/lib

Closing as not a bug, thanks!
msg272012 - (view) Author: umank.behera (ubehera) Date: 2016-08-05 05:04
I need to have --enable-shared present while compiling to make PyInstaller work.
History
Date User Action Args
2016-08-05 05:04:36ubeherasetmessages: + msg272012
2016-08-05 04:50:31ubeherasetstatus: open -> closed
resolution: not a bug
messages: + msg272011
2016-08-04 20:19:57ned.deilysetnosy: + ned.deily
messages: + msg271998
2016-08-04 20:03:00ubeheracreate