pip / easy_install없이 pypi 모듈을 수동으로 설치하는 방법은 무엇입니까?


91

gntp 모듈 을 사용하여 C / C ++ 소프트웨어에 대한 토스터와 같은 알림을 표시하고 싶습니다. 소프트가 다른 컴퓨터에서 자체 실행될 수 있도록 모든 종속성을 패키지화하고 싶습니다.

gntp 모듈은 사용할 수없는 pip 설치 프로그램을 통해서만 사용할 수 있습니다 (소프트를 실행하는 컴퓨터는 인터넷에 연결되어 있지 않습니다). 소스에서 어떻게 설치할 수 있습니까?

사용자가 easy_install / pip를 설치하고 수동으로 pip 경로를 % PATH에 추가하도록 강요하지 않는 것이 좋습니다.

추신 : 저는 Windows 컴퓨터에서 Python 2.7을 사용하고 있습니다.


4
아마도 python setup.py install?
Nicolas

답변:


149
  1. 패키지 다운로드
  2. 압축되어 있으면 압축을 풉니 다
  3. setup.py가 포함 된 디렉토리로 cd
  4. 여기에 포함 된 문서에 포함 된 설치 지침이있는 경우 지침을 읽고 따르십시오.
  5. 입력 python setup.py install

5 단계에서 관리자 권한이 필요할 수 있습니다. 따라서 여기서 수행하는 작업은 운영 체제에 따라 다릅니다. 예를 들어 Ubuntu에서는 다음과 같이 말할 수 있습니다.sudo python setup.py install

편집 -kwatford 덕분에 (첫 번째 의견 참조)

위의 5 단계에서 관리자 권한이 필요하지 않게하려면 --user 플래그를 사용할 수 있습니다. 이 방법으로 현재 사용자에 대해서만 패키지를 설치할 수 있습니다.

문서는 다음과 같이 말합니다.

파일은 site.USER_BASE의 하위 디렉터리에 설치됩니다 (이하 userbase로 작성 됨). 이 체계는 동일한 위치 (site.USER_SITE라고도 함)에 순수 Python 모듈과 확장 모듈을 설치합니다. 다음은 Mac OS X를 포함한 UNIX의 값입니다.

자세한 내용은 http://docs.python.org/2.7/install/index.html 에서 찾을 수 있습니다.


8
pip / easy_install / setup.py는 일반적으로 --user현재 사용자에 대해서만 패키지를 설치 하는 플래그를 허용하며 일반적으로 관리자 액세스의 필요성을 우회합니다.
kwatford

3
어떤 이유로 나는이 참조 : ImportError: No module named 'setuptools'내가 여기에 발견 : pypi.python.org/pypi/setuptools/1.1.6를 (가) 나에게 예외 오류, 이제 웹 소켓 모듈은 모든 직장, 내가주지 생각하지 않습니다 주었다 설치를하지만 이 시점에서 Windows의 Python 3.3에서 작동합니다.
SSH이

2
@SSHThis : 설치를 시도하는 패키지와 동일한 결과가 있습니다. 자세히 설명하면 "이 배포판이 설치 되었기 때문에 --multi-version [...]"이 표시됩니다. 이는 거짓 (여기에 하나의 Python 버전 만 설치됨)이고 도움이되지 않습니다 (문서화 된 "python -m easy_install [...] 사용). "은 전혀 도움이되지 않습니다), 저는 여러분과 함께 있습니다-Python은 사용할 수 없습니다.
Eric Towers

1
나는 pip install target-package일반적으로 target-package가 의존하는 다른 패키지를 자동으로 설치 / 업데이트 한다고 생각 합니다. setup.py 접근 방식의 경우 이런 일이 발생합니까? 아니면 패키지의 zip에도 모든 종속성이 포함되어 있습니까? 그리고 우리가 zip 대신 파이썬 바퀴를 다운로드해야한다는 뜻입니까? 마찬가지로 NumPy와 하시나요? zip을 찾을 수없는 경우 (예 : numpy)? (내가 모든 다운로드를 위해 고군분투해야하는 기업 프록시 뒤에서 일해야하기 때문에이 모든 것을 요구하는 것입니다 : '()
Mahesha999

3
오프라인 상태에서는 실제로 패키지를 다운로드 할 수 없습니다 ... 어리석은 작업 네트워크 외부에서 패키지를 다운로드하려면 다음을 수행 할 것입니다. 1. virtualenv를 만듭니다. 2. python setup.py install또는 pip install필요한 모든 것. 3. pip freeze를 실행하여 모든 패키지 및 모든 버전 목록을 가져옵니다. 이것을 파일 (전통적으로 requirements.txt라고 함)에 저장할 수 있습니다. 그런 다음 패키지를 다운로드하여 다른 컴퓨터에 복사하여 사용할 수 있습니다 pip download [options] -r <requirements file>. 이것은 가장 효율적인 방법은 아니지만 쉽습니다.
Sheena

5

더 설명하기 위해 시나의 답변을 , 나는이 필요 설정 - 도구 다른 도구 등의 종속성으로 설치 더-itertools을 .

다운로드

Clone or download버튼을 클릭하고 방법을 선택하십시오. 나는 이것을 dev/py/libs내 사용자 홈 디렉토리 의 디렉토리에 넣었다 . 저장 위치는 중요하지 않습니다. 설치되지 않기 때문입니다.

설정 도구 설치

setup-tools 디렉토리 에서 다음을 실행해야합니다 .

python bootstrap.py
python setup.py install

일반 종속성 설치

이제 more-itertools 디렉토리로 이동하여 정상적으로 설치할 수 있습니다.

  1. 패키지 다운로드
  2. 아카이브 인 경우 압축 해제
  3. ( cd ...)를 포함하는 디렉토리로 이동합니다.setup.py
  4. 여기에 포함 된 문서에 포함 된 설치 지침이있는 경우 지침을 읽고 따르십시오.
  5. 입력 : python setup.py install

2

Sheena의 대답이 작업을 수행 하더라도 pip거기서 멈추지 않습니다.

Sheena의 답변에서 :

  1. 패키지 다운로드
  2. 압축되어 있으면 압축을 풉니 다
  3. setup.py가 포함 된 디렉토리로 cd
  4. 여기에 포함 된 문서에 포함 된 설치 지침이있는 경우 지침을 읽고 따르십시오.
  5. 입력 python setup.py install

이 말에, 당신은 될 겁니다 .egg의 파일 site-packages. 사용자로서 이것은 당신을 괴롭히지 않아야합니다. 당신은 할 수 importuninstall일반적으로 패키지. 그러나 원하는 경우pip 하려면 다음 단계를 계속할 수 있습니다.

에서 site-packages디렉토리,

  1. unzip <.egg file>
  2. 이름을 바꾸다 EGG-INFO디렉토리 과 같이<pkg>-<version>.dist-info
  3. 이제 패키지 이름이있는 별도의 디렉토리가 표시됩니다. <pkg-directory>
  4. find <pkg-directory> > <pkg>-<version>.dist-info/RECORD
  5. find <pkg>-<version>.dist-info >> <pkg>-<version>.dist-info/RECORD. 그만큼>> 덮어 쓰기 방지하는 것입니다.

이제 site-packages디렉토리를 살펴보면 pip. 에 uninstall, 그냥 평소 pip uninstall <pkg>.


Anaconda 저장소에서 패키지를 설치하는데 setup.py파일 이 없으면 어떻게합니까?
혼동
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.