classification
Title: get_python_lib() returns incorrect path for site-packages
Type: behavior Stage:
Components: Distutils Versions: Python 3.7, Python 3.6, Python 3.5, Python 2.7
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: dstufft, eric.araujo, sabakauser, steven.daprano
Priority: normal Keywords:

Created on 2019-07-10 09:02 by sabakauser, last changed 2019-07-12 09:33 by steven.daprano.

Messages (2)
msg347612 - (view) Author: Saba Kauser (sabakauser) Date: 2019-07-10 09:02
HI,
I am using get_python_lib() to copy certain data files to site-pacakges location while installation of package ibm_db. I am using this function to execute a command as well on one of the shared library @package install location.
So far, I have faced issue with this function in:
virtual env, anaconda python and with pip cache enabled. 

The source can be found at: https://github.com/ibmdb/python-ibmdb/blob/master/IBM_DB/ibm_db/setup.py#L242

When I run through debugger for python setup.py build command, I can see following:
(Pdb) p data_files
[('C:\\Users\\skauser\\Anaconda\\Lib\\site-packages', ['./README.md']), ('C:\\Users\\skauser\\Anaconda\\Lib\\site-packages', ['./CHANGES']), ('C:\\Users\\skauser\\Anaconda\\Lib\\site-packages', ['./LICENSE']), ('C:\\Users\\skauser\\Anaconda\\Lib\\site-packages', ['./config.py.sample'])]

However, in "python setup.py install", this folder structure is created:
C:\Users\skauser\Anaconda\Lib\site-packages\users\skauser\appdata\local\programs\python\python37\Lib and no data files are copied.

If I do : "pip install ." from source directory,
The data_files are copied under "c:\users\skauser\anaconda\lib\site-packages\users\skauser\anaconda\lib\site-packages" when the expectation is to have the files copied under "c:\users\skauser\anaconda\lib\site-packages".

Can you please look into this. 
Although this is not a serious problem for platforms other than mac, But on MAC, I am using this same function get_python_lib()to execute a system command and without this working properly, MAC users are unable to use the python ibm_db driver.

This is blocking! Please help.
msg347734 - (view) Author: Steven D'Aprano (steven.daprano) * (Python committer) Date: 2019-07-12 09:33
You say this is a problem affecting *Mac* users, but all of your examples show *Windows* paths. How do you know it affects Macs?

You say that get_python_lib() returns the incorrect path, but you don't show us the output of calling get_python_lib(). If the result from the debugger is to be believed, it is returning the path you expect:

'C:\\Users\\skauser\\Anaconda\\Lib\\site-packages'

so I'm afraid I don't understand why you think that the problem lies in get_python_lib(). Can you explain?
History
Date User Action Args
2019-07-12 09:33:11steven.dapranosetnosy: + steven.daprano
messages: + msg347734
2019-07-10 09:02:54sabakausercreate