By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
444,100 Members | 2,846 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 444,100 IT Pros & Developers. It's quick & easy.

distutils: package data

P: n/a
I am writing a setup.py for my package. I have a pre-compiled
myextmod.pyd file in my package and I want the distutils to
automatically copy it to
C:\Python23\Lib\site-packages\mypackage\myextmod.pyd.

I try to add the following parameter to setup():

data_file = [('mypackage', ['mypackage/myextmod.pyd'])],

but it installs the pyd file to C:\Python23\mypackage\myextmod.pyd,
this is not what I want.

And I don't want to specify the path in data_file to the absolution
path 'C:\Python23\Lib\site-packages\mypackage', for portability, of
course.

Any hints?

Jul 18 '05 #1
Share this Question
Share on Google+
3 Replies


P: n/a
ehh.. I did a little more reading and found that this function can be
easily done by the new distutils parameter "package_data" in 2.4.

However, I am using python2.3 :(

So, my question becomes: how to emulate the package_data function in
python 2.3?

Jul 18 '05 #2

P: n/a
Qiangning Hong wrote:
ehh.. I did a little more reading and found that this function can
be easily done by the new distutils parameter "package_data" in 2.4.

However, I am using python2.3 :(

So, my question becomes: how to emulate the package_data function in
python 2.3?


There is distutils.sysconfig.get_python_lib() that works at least
since 2.2:
from distutils import sysconfig
sysconfig.get_python_lib() '/usr/lib/python2.2/site-packages'
from distutils import sysconfig
sysconfig.get_python_lib() '/usr/lib64/python2.3/site-packages'
from distutils import sysconfig
sysconfig.get_python_lib()

'c:\\python24\\Lib\\site-packages'

Serge.

Jul 18 '05 #3

P: n/a
Qiangning Hong wrote:
I am writing a setup.py for my package. I have a pre-compiled
myextmod.pyd file in my package and I want the distutils to
automatically copy it to
C:\Python23\Lib\site-packages\mypackage\myextmod.pyd.

I try to add the following parameter to setup():

data_file = [('mypackage', ['mypackage/myextmod.pyd'])],

but it installs the pyd file to C:\Python23\mypackage\myextmod.pyd,
this is not what I want.

And I don't want to specify the path in data_file to the absolution
path 'C:\Python23\Lib\site-packages\mypackage', for portability, of
course.

Any hints?

Actually you probably want to look at describing the .pyd as an
Extension. Then you can even give distutils the instructions to build
it, and as a side effect you can install it to the right location
This may not be what you want though

David
Jul 18 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.