The best way to package a Python module?

Jean-Paul Calderone exarkun at divmod.com
Sun Jun 15 13:01:30 EDT 2008


On Mon, 16 Jun 2008 01:37:47 +0900, js <ebgssth at gmail.com> wrote:
>On Mon, Jun 16, 2008 at 1:16 AM, Jean-Paul Calderone <exarkun at divmod.com> wrote:
>> On Mon, 16 Jun 2008 01:01:47 +0900, js <ebgssth at gmail.com> wrote:
>>>
>>> Hi list,
>>>
>>> I'm trying to build a package for python modules.
>>> When I just wanted to have a package for Python2.5, this is an easy task,
>>> but in most cases, it's not enough.
>>> Sometimes I need python2.4, 2.5, 2.6 or 3.0 etc.
>>>
>>> The problem is coming from the fact that python installs its modules
>>> into version-independent place as follow.
>>>
>>> $prefix/lib/python2.4/site-package/
>>> $prefix/lib/python2.5/site-package/
>>>
>>> For this, I have to create a package for each version.
>>> Let's say if I need a module called "spam" and installed spam with
>>> python2.5.
>>> The files would be installed in $prefix/lib/python2.5/site-package/.
>>> It only usable from python2.5.
>>>
>>> When I need it for python2.4, I have to prepare the same package for
>>> python2.4,
>>> the only difference is the place it installed.
>>>
>>> This is the problem I'm having now.
>>> How can I avoid this redundant work?
>>> Any advice, suggestions would be greatly appreciated.
>>>
>>> Thanks!
>>
>> What do you mean, "package"?  If you use distutils, then none of the
>> questions you asked make very much sense.
>>
>
>By "package", I meant APT, Ports for BSD, MacPorts, etc.
>

I don't know about ports or macport, but Debian has recently switched to
a different policy for python packages which does not involve as many
Python version specific copies of things.  You might want to look at
"python-central" and stdeb.

Jean-Paul



More information about the Python-list mailing list