2011-01-20 2 views
2

나는 chrooted Linux 이미지를 유지하고 그 chroot 된 이미지에 설치하고자하는 패키지를 가지고 있습니다.distutils를 사용하여 chroot 된 환경에 설치하기

두 패키지 모두 두 위치에 모두 설치됩니다. 나는 무슨 일이 일어나고 있는지 그리고 어떻게 고쳐야 할지를 알 수 없다.

내 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

파일 세트에 대해 다른 빌드 디렉토리를 지정해야한다는 것을 알았습니다. distutils는 매번 설치 될 필요가있는 'build'내부의 모든 것을 가정하고있었습니다.

바라건대 다른 사람이이 작업을 수행하는 방법을 알아내는 데 어려움을 겪지 않기를 바랍니다. 여기 스크립트의 제 2 번째 부분이 있습니다 :

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' } 
    } 
)