2014-09-26 4 views
13

우리 회사에서 파이썬 프로젝트를 수행하려면 설치 가능한 배포판을 만들어야합니다.파이썬 프로젝트에 바퀴/달걀 및 모든 종속성 빌드

이 포함되어야

  • 내 프로젝트
  • (선택적으로) 모든 설치를 나열하는 requirements.txt 파일을 생성 프로젝트의 모든 의존성 계란 또는 WHL위한 계란 또는 WHL을 이 릴리스의 구성 요소

한 바퀴 만 컴파일하지 않고 프로젝트 구성 요소를 쉽게 컴파일 할 수있는 쉬운 플러그인 (예 : bdist_wheel 대신)이 있습니까?

필자는이 스크립트를 작성할 수 있지만, 패키지 + 종속성을 더 짧은 단계에서 빌드하는 지름길이 있기를 바랬습니다.

이것은 Windows + Linux에서 Python 2.7에서 작동해야합니다.

답변

17

패키지에 대해 setup.py 파일을 만들어야합니다. 최신 setuptools 및 pip 설치되어 있는지 확인하십시오. 그런 다음 실행

python setup.py bdist_wheel 

이이 패키지의 휠 파일을 만듭니다. 여기에는 C/C++ 헤더, DLL 등이 없다고 가정합니다. 그렇게하면 할 일이 많아 질 것입니다. 패키지는 PyPI에없는 경우

pip wheel -r requirements.txt 

는, 당신은 수동으로 패키지의 휠 파일을 복사해야합니다 : 종속성을 얻으려면

, 당신은 다음은 requirements.txt 파일을 생성하고 실행하는 것이 좋습니다 이 명령이 생성하는 휠 폴더. 자세한 내용은 다음과 같은 우수한 문서를 참조하십시오, 당신은 단순히 경우에도 프로젝트 폴더 내에서

pip wheel . 

를 실행할 수 있습니다 최신형 pipwheel

16

를 응용 프로그램 ISN PyPi에서. 모든 바퀴는 ./wheelhouse에 저장됩니다. 내가 그것을 시도했지만, 그것은 내 의존성 중 하나를 놓친 나는 수동으로 그것을 구축해야했습니다. 이유를 모르겠다.

+0

pypi에서 로컬 패키지를 검색하므로 실패합니다. 대신, 나는'python setup.py bdist_wheel'을 먼저 실행 한 다음, pypi 패키지에'pip wheel -r requirements.txt'를 실행합니다. – guneysus