[Distutils] install location(s)
Fred L. Drake
Fred L. Drake, Jr." <fdrake@acm.org
Mon, 29 Mar 1999 17:33:02 -0500 (EST)
Andrew Dalke writes:
> 1)
> What is the correct location for "pure" python module installations?
>
> $(prefix)/lib/python$VERSION/site-packages
> or
> $(prefix)/lib/site-python
site-python/ is the original location, but never had a
platform-specific counterpart. site-packages/ was intended to solve
this, which is why it comes in both flavors, and deals with version-
related issues.
In general, 100% Python packages should be installed in
site-packages/, because not all packages are sure to work across major
version changes: it's too easy to rely on the bahavior of bugs in the
library. ;-( This results in the safest (most conservative)
installation and allows for faster detection on libraries which are
not available for the Python version: ImportError is harder to
misinterpret than buggy behavior.
Only use site-python/ if you really are confident that your package
will stand the test of Python interpreter updates. Unless there is a
major problem with diskspace, just don't do this!
Packages that contain native code should install in
$(exec_prefix)/lib/python$VERSION/site-packages/.
> As I understand it now, the python specific .so files need to be
> on the PYTHONPATH, which currently contains no information about
This varies by platform, but I don't think the various binary
flavors for SGIs are indicated; the directories on sys.path which are
platform-specific are either computed from $exec_prefix or contain
Python modules under $prefix that are only meaningful for the
platform.
I presume each of these platform variations would get a different
$exec_prefix, or the distinction would be hidden at a lower level
(such as mounting a filesystem at a common point based on binary
flavor; not hard with NFS).
-Fred
--
Fred L. Drake, Jr. <fdrake@acm.org>
Corporation for National Research Initiatives