2014-11-08 4 views
7

python whl 패키지에 다음과 같은 문제가 있습니다.Pip, wheel and console_scripts

내 setup.py에 단일 진입 점이 정의 된 패키지가 있습니다. pip install .을 실행하면 엔트리 포인트 래퍼가 올바르게 설치됩니다. python setup.py bdist_wheel 다음에 pip install thing.whl을 실행하면 패키지 만 설치되지만 진입 점은 설치하지 않습니다.

생성 된 휠 패키지에서 엔트리 포인트를 올바르게 설치하려면 어떻게해야합니까?

추 신 : 휠 패키지의 압축을 풀 때 예상되는 항목과 함께 "entrypoints.txt"를 찾습니다. 단지 환경 ​​빈에 설치되지 않습니다.

+0

문제가 발생하는지 확실하지 않습니다. pip 설치 방법이 작동하지 않습니까? – Eric

+0

나는 약간의 말씨를 개선하려고 노력했다. 'pip install '은 작동하지만 소스 배포가 필요합니다. 진입 점이 휴지통에 설치되어 있지 않으므로 바퀴를 사용하여 포장하고 패키지를 설치하는 것은 작동하지 않습니다. –

답변

6

을 사용하여 패키지에 미리 생성 된 콘솔 스크립트 래퍼를 포함 시켰지 만 이는 최적이 아니며 파일이 제거되었습니다. 설치 관리자는 대신 이러한 래퍼 스크립트를 생성해야하지만 pip은 아직 업데이트되지 않았습니다. issue 1067을 참조하십시오. pull request 1251이 릴리스의 일부가 될 때까지

, 당신은 콘솔 스크립트를 설치하려면 별도의 명령을 사용해야합니다 :

python -m wheel install-scripts thing.whl 

가 휠 설명서에 Setuptools scripts handling를 참조하십시오.

풀 요청이 이번 달 초 (2014 년 11 월)에 병합되었으며 upcoming 6.0 release의 일부가됩니다. pip을 사용하여 GitHub의 개발 버전으로 업그레이드 할 수도 있습니다.

pip install git+https://github.com/pypa/pip.git 
+0

대신에'pkg_resources.DistributionNotFound'가 발생했다면 패키지가 그 스크립트를 위해 뭔가를 요구할 수 있기 때문에'python -m wheel install '을 실행 한 다음'python -m wheel install-scripts pkg'을 실행해야 할 수도 있습니다 일하다. – metatoaster