zooko wrote:
>> Yes, if you used symbols from any shared library in an extension
>> module, you'd need to know the version of that shared library. So it's
>> not just libc. This is the same on any OS, not just linux.
> 
> Wait a minute, an extension module built into the Python Standard
> Library, you mean?  

No, I'm writing about non stdlib extension modules.

Because for separately packaged packages
> ("distributions") such as the numpy that you mentioned, your package
> ("distribution") would express its requirement on that other package
> ("distribution") in its install_requires metadata, not in its name. 
> There, in the install_requires metadata, it can also express which
> version it requires.  Right?

No, because the act of compiling your .egg fixes the specific version
(e.g. numpy==1.3) to keep the ABI compatible with the version of numpy
installed at extension module compile time. Whereas the install_requires
is about API compatibility, and could thus be numpy>=1.2, for example.

(For pure Python modules, this isn't a problem because there is only an
API version to worry about. But with compiled extensions, there is also
the ABI version to worry about.)
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to