비슷한 상황에 처했을 때 일반적으로 패키지 관리자를 사용하지 않습니다. 특히 프로덕션 서버와 같은 무언가를 깨는 것이 부끄러 울 경우에는 특히 그렇습니다. 대신 Activestate로 이동하여 바이너리 패키지를 다운로드합니다.
https://www.activestate.com/activepython/downloads/
이것은 모든 것을 폴더에 넣고 시스템 파일을 건드리지 않는 스크립트를 실행하여 설치됩니다. 사실, 설정하기 위해 루트 권한도 필요하지 않습니다. 그런 다음 바이너리 이름을 apy26과 같은 이름으로 변경하고 해당 폴더를 PATH 끝에 추가하고 코딩을 시작합니다. apy26 setup.py install
virtualenv 및 easyinstall을 사용 하여 패키지를 설치 하거나 사용하는 경우 시스템 표준 Python을 건드리지 않고도 필요한만큼 유연한 Python 환경을 갖게됩니다.
편집 ... 최근에 외부 종속성없이 모든 배포판에서 실행되어야하는 Linux 용 이식 가능한 Python 바이너리를 빌드하기위한 작업을 수행했습니다. 즉, 이식 가능한 Python 모듈에 필요한 바이너리 공유 라이브러리는 빌드의 일부이며 tarball에 포함되고 Python의 개인 디렉터리 구조에 설치됩니다. 이렇게하면 시스템에 설치된 Python을 방해하지 않고 애플리케이션 용 Python을 설치할 수 있습니다.
내 github 사이트 에는 Ubuntu Lucid 10.04 LTS에서 32 비트 및 64 비트 설치 모두에서 철저하게 테스트 된 빌드 스크립트가 있습니다. Debian Etch에서도 구축했지만 얼마 전 일이어서 변경하지 않았다고 보장 할 수 없습니다. 가장 쉬운 방법은 Ubuntu Lucid를 가상 머신에 넣고 스크립트를 체크 아웃 한 다음 스크립트 git clone git://github.com/wavetossed/pybuild.git
를 실행하는 것입니다.
빌드 한 후에는 최신 Linux 배포판에서 tarball을 사용하십시오. 디렉토리 를 이동하기 전에 인터프리터 경로를 설정하기 /data1/packages/python272
위해 포함 된 디렉토리 를 실행해야한다는 것 외에 다른 디렉토리로 이동하는 데 약간의 주름 이 있습니다 patchelf
. 이것은 모든 바이너리에 영향을 미칩니다./data1/packages/python272/bin
이 모든 것은 RUNPATH로 빌드하고 종속 공유 라이브러리를 복사하는 것을 기반으로합니다. 스크립트가 여러 파일에 있지만 사실상 /etc/rc.d 디렉토리의 스타일로 배열 된 하나의 긴 쉘 스크립트입니다.