programing

setup.py가 달걀로 설치되지 않도록 중지

kingscode 2021. 1. 15. 08:26
반응형

setup.py가 달걀로 설치되지 않도록 중지


setup.py패키지를 달걀로 설치하는 것을 어떻게 중지 합니까? 또는 더 나은 방법은 easy_install패키지를 어떻게 설치 egg합니까?

sudo python setup.py 설치

그 이유는 형식의 PyDev패키지에 대해 다소 까다롭기 때문 egg입니다 boto. 지금 제가 관심을 갖고있는 패키지는 .

업데이트 : 무차별 대입 방법을 찾았 습니다.

sudo easy_install -m boto
cd path/to/boto-xyz.egg
sudo mv boto ..
sudo rm -rf boto-xyz.egg

나는 미묘하거나 중요한 것을 놓치고 있다고 느낍니다 (질문을 요청한 지 몇 년 후이 페이지를 만나 만족스러운 답변을 찾지 못함). 그러나 다음은 나에게 잘 작동합니다.

python setup.py install --single-version-externally-managed --root=/

압축 *.egg파일은 setuptools 의 발명품입니다 (저는 그것들이 만들어진 이유를 이해하고 있지만 그 팬은 아닙니다). 그리고 setup.py스크립트가 setuptools를 사용 하고 있기 때문에 (그리고 필요할 수도 있기 때문에 ) 패키지는 압축 *.egg파일 로 설치됩니다 .

위의 명령 줄 옵션은 pip (Python 패키지 관리자)에서 사용하는 옵션 과 유사 하며 패키지가 압축 *.egg파일 로 설치되지 않도록하는 다른 방법을 알려줍니다 . Just use pip! setup.py스크립트가 포함 된 디렉터리가있는 경우 해당 디렉터리에서 다음 명령을 실행하여 pip를 사용하여 패키지를 설치할 수 있습니다.

pip install .

이는 setup.py추가 메타 데이터를 추적하기 때문에 위 명령에 비해 개선 된 것입니다 (예 : 설치된 파일 추적을 통해보다 안정적인 제거가 가능함).


몇 년 후, 같은 문제가 받아 들여진 대답에 만족하지 않았습니다. Google 그룹에서 다음을 찾았습니다.

pushd /path/to/my/package/ 
python setup.py sdist 
popd 
pip install /path/to/my/package/dist/package-1.0.tar.gz

설명 : * .egg가 아닌 소스 배포판python setup.py sdist만듭니다 ! 결과 아카이브 (유닉스에서는 .tar.gz, Windows에서는 .zip)를 pip를 사용하여 원격 모듈처럼 설치할 수 있습니다. 추가 매개 변수도 필요하지 않습니다! 이렇게하면 원하는 전체 탐색 가능 모듈이 생성됩니다.

참조 URL : https://stackoverflow.com/questions/6301003/stopping-setup-py-from-installing-as-egg

반응형