[Numpy-discussion] include file location and .eggs
konrad.hinsen at laposte.net
konrad.hinsen at laposte.net
Mon Jan 23 03:50:16 CST 2006
On Jan 19, 2006, at 18:31, Andrew Straw wrote:
> For me, and I suspect for most others in favor of the new way, the
> answer boils down to using eggs with out-of-the box numpy. Eggs are
> the
...
Thanks for explaining this issue in some detail!
> = Why can't eggs use traditional include locations? =
> Multiple version support. Using eggs, it is possible to have multiple
> versions of the same distribution, such as numpy, installed within a
> single Python installation. (I use "distribution" to mean
> collection of
How is multiple version support in eggs supposed to work in the case
of packages that contain C modules?
Let me give a concrete example: Numeric, ScientificPython, and MMTK.
Numeric provides a C API through its header files. ScientificPython
and MMTK both contain C modules that depend on that C API.
ScientificPython also provides a C API for two of its modules, which
in turn MMTK depends on.
Suppose I would like to have both Numeric 23.5 and Numeric 24.2 on my
machine, and also Scientific 2.4.2 and Scientific 2.5.1. I would then
need four sets of the binary modules of Scientific:
1) 2.4.2 for Numeric 23.5
2) 2.4.2 for Numeric 24.2
3) 2.5.1 for Numeric 23.5
4) 2.5.1 for Numeric 24.2
I would also need four sets of the binary modules of MMTK, assuming
that I am happy with just one version of MMTK.
Unless some mechanism (which would have to be part of egg
construction or egg installation) makes sure that the correct
binaries are used for the particular combination of versions that I
wish to use, I will end up having lots of mysterious crashes
resulting from incompatible binary versions.
If the egg mechanism does take care of such dependencies, then it
could easily (and thus should) take care of selecting the right
combination of header files. If it doesn't, then it should not be
used at all for packages containing C or Pyrex modules, and packages
like numpy should better not accomodate to eggs because in the long
run that will only cause support headaches.
Konrad.
--
---------------------------------------------------------------------
Konrad Hinsen
Laboratoire Léon Brillouin, CEA Saclay,
91191 Gif-sur-Yvette Cedex, France
Tel.: +33-1 69 08 79 25
Fax: +33-1 69 08 82 61
E-Mail: khinsen at cea.fr
---------------------------------------------------------------------
More information about the Numpy-discussion
mailing list