使用distutils安装INTO chroot的环境

时间:2011-01-20 21:50:37

标签: python distutils chroot

我维护了一个chrooted Linux图像,我有一个我想要安装到chrooted图像中的软件包。

两个软件包最终都安装到两个位置;我无法弄清楚发生了什么以及如何解决它。

我的setup.py:

import os
from distutils.core import setup

setup(name='ServerLibrary',
    version='1.1',
    description='Server Framework',
    author='Michael Brown',
    scripts = [ 'foo.py' ],
    packages = [ 'ServerLibrary' ],
)

os.chroot('/srv/nfs/chrooted-nfs-client/')
setup(name='ClientLibrary',
    version='1.1',
    description='Client Framework',
    author='Michael Brown',
    packages = [ 'ClientLibrary' ],
)

完成我想要做的事情的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我发现我需要为文件集指定不同的构建目录。 distutils假设每次“build”中的所有内容都需要安装。

希望我能帮助别人解决如何做到这一点的麻烦。这是我修复脚本的第二部分:

os.chroot('/srv/nfs/chrooted-nfs-client/')
setup(name='ClientLibrary',
    version='1.1',
    description='Client Framework',
    author='Michael Brown',
    packages = [ 'ClientLibrary' ],
    options = {
        'build': { 'build_base': 'build-chroot' }
    }
)