星期日, 十一月 04, 2007

python distutils data_files lib_prefix

使用 distutils 的 setup() 的 data_files 参数,本来期望文件被拷贝到 /usr/lib/python2.4/site-packages/test 下面,结果却被拷贝到了 /usr/test(如果使用 upm 安装则没有权限),因为 prefix 为 /usr。

那么我希望改变这个设置。因为 /usr/lib/python2.4/site-packages 应该是在安装时的 LIB 目录设定下的,所以找到 lib_prefix 即可:
from distutils import sysconfig

lib_prefix = sysconfig.get_python_lib()

setup(
...
data_files = [("%s/test" % lib_prefix, ['tree_ut.py'])],
...

没有评论: