[Python-Dev] Why does Mac OS X python share site-packages with apple python?

Ned Deily nad at acm.org
Sat Mar 3 22:57:39 CET 2012


In article <5A0E2490-A743-4729-A752-D94524EA9840 at barrys-emacs.org>,
 Barry Scott <barry at barrys-emacs.org> wrote:
> On my Mac OS X 10.7.3 System I have lots of python kits installed for 
> developing extensions.
>> I'll just noticed that Python.org 2.7.2 uses the sames site-packages folder 
> with Apple's
> 2.7.1.
>> Since extensions compiled against Apple's 2.7.1 segv when used by 
> python.org's 2.7.2
> this is at least unfortunate.
>> Here is the what is in sys.path for both versions. Notice 
> /Library/Python/2.7/site-packages
> is in both.

That directory is in the default sys.path for both the Apple-supplied 
Python 2.7 in Lion and for the python.org Python 2.7's but that doesn't 
mean both versions use the same site-packages directory:
$ /usr/bin/python2.7 -c "import distutils.sysconfig; \
 print(distutils.sysconfig.get_python_lib())"
/Library/Python/2.7/site-packages
$ /usr/local/bin/python2.7 -c "import distutils.sysconfig; \
 print(distutils.sysconfig.get_python_lib())"
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-pack
ages
That means that, by default, packages installed by Distutils-based 
installs (setup.py, easy_install, pip, et al) will be installed to the 
corresponding directory for each version.
The python.org OS X Pythons (and built-from-source framework builds) add 
the Apple-specific directory to the search path in order to allow 
sharing of installed third-party packages between the two. The feature 
was added in 2.7 and 3.1+ and tracked in Issue4865 
(http://bugs.python.org/issue4865). Please open a new issue on the 
tracker if you have examples of how this is causing problems. Thanks.
-- 
 Ned Deily,
 nad at acm.org


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /