2010-01-27 2 views
8

사용자 정의 파이썬을 빌드하는 마지막 단계로 myproject.pth을 추가해야합니다.setup.py : p 번째 파일 만 설치 하시겠습니까?

install: 
     rm -f   ../../lib/python2.6/site-packages/myproject.pth 
     cp myproject.pth ../../lib/python2.6/site-packages/myproject.pth 

하지만 난 setup.py이를 캡슐화 싶습니다

현재 나는 메이크에서이 일을하고 있습니다. 불행히도 setup.py 문서는이 사소한 문제를 다루지 않는 것 같습니다! 어떤 도움을 주셔서 감사합니다. 나는이 시도했지만 작동하지 않습니다 당신은 설정에 data_files 매개 변수를 찾고

from setuptools import setup 
setup(
    packages=['mypackage_pth'], 
    package_dir={'mypackage_pth': '.'}, 
    package_data={'mypackage_pth': ['mypackage.pth']}, 
) 
+0

.pth 파일의 새 위치를 알고있는 경우 설치 (...) 기능을 수행 한 후 수동으로 복사 할 수 있습니다. 예를 들어 shutil 모듈로. * 편집 : * Oww ..이 질문은 한 살입니다. – svenwltr

답변

5

:

from distutils import sysconfig 
site_packages_path = sysconfig.get_python_lib() 

setup(..., 
    data_files=[(site_packages_path, ["mypackage.pth"])] 
) 
+0

내가 누락 한 열쇠는'get_python_lib()'입니다. 위대한 팁! – bukzor

+0

이것은 나를 위해 작동하지 않았다. 경로 설정 파일 ('* .pth')은'site-packages'가 아닌 패키지 자체에 복사됩니다. 무엇이 잘못 될지 알고 있습니까? – astronaut

+0

사례에 'site_packages_path' 란 무엇입니까? – stderr

1

표준 에러의 대답에서 적응. 만약 당신이 라고 생각하면이된다.

from distutils import sysconfig 
site_packages_path = sysconfig.get_python_lib() 

import shutil 
shutil.copy('mypackage.pth', site_packages_path) 

setup(...) 
관련 문제