Virtualenv에 다른 버전의 Python을 설치할 수 있습니까?
Python 2.4가 설치된 웹 호스팅에 공유 계정이 있지만 코드가 2.4와 호환되지 않습니다.Virtualenv에 Python 2.6을 직접 설치할 수 있습니까?
참고: 공유 서버에 설치할 권한이 없습니다.
다음은 가상 환경에 대한 옵션입니다.
$ virtualenv
You must provide a DEST_DIR
Usage: virtualenv [OPTIONS] DEST_DIR
Options:
--version show program's version number and exit.
-h, --help show this help message and exit.
-v, --verbose Increase verbosity.
-q, --quiet Decrease verbosity.
-p PYTHON_EXE, --python=PYTHON_EXE
The Python interpreter to use, e.g.,
--python=python2.5 will use the python2.5 interpreter
to create the new environment. The default is the
interpreter that virtualenv was installed with
(/usr/bin/python)
--clear Clear out the non-root install and start from scratch
--no-site-packages Don't give access to the global site-packages dir to
the virtual environment
--unzip-setuptools Unzip Setuptools or Distribute when installing it
--relocatable Make an EXISTING virtualenv environment relocatable.
This fixes up scripts and makes all .pth files
relative
--distribute Use Distribute instead of Setuptools. Set environ
variable VIRTUALENV_USE_DISTRIBUTE to make it the
default
--prompt==PROMPT Provides an alternative prompt prefix for this
environment
당신이 원하는 것은 당신이 쓸 수 있는 디렉토리에 파이썬을 설치하는 것입니다.
당신은 지침을 따를 수 있습니다.
Python 2.7.1의 경우
Python source
mkdir ~/src
mkdir ~/.localpython
cd ~/src
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar -zxvf Python-2.7.1.tgz
cd Python-2.7.1
make clean
./configure --prefix=/home/${USER}/.localpython
make
make install
가상 환경 설치
virtualenv source
cd ~/src
wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.5.2.tar.gz#md5=fbcefbd8520bb64bc24a560c6019a73c
tar -zxvf virtualenv-1.5.2.tar.gz
cd virtualenv-1.5.2/
~/.localpython/bin/python setup.py install
로컬 파이썬을 사용하여 가상 환경 생성
virtualenv docs
mkdir /home/${USER}/virtualenvs
cd /home/${USER}/virtualenvs
~/.localpython/bin/virtualenv py2.7 --python=/home/${USER}/.localpython/bin/python2.7
환경 활성화
cd ~/virtualenvs/py2.7/bin
source ./activate
수표
(py2.7)$ python
Python 2.7.1 (r271:86832, Mar 31 2011, 15:31:37)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
(py2.7)$ deactivate
$ python
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
사전 요구 사항:
sudo easy_install virtualenv
sudo pip install virtualenvwrapper
Python2로 virtualenv를 설치하는 중입니다.6:
으로 다른 을 다운로드,및할 수 .
/usr/local
또는 다른 장소.▁가 아닌 다른
/usr/local
PATH에 추가합니다.셸을 다시 로드하여 업데이트된 PATH를 선택합니다.
셸에서 할 수 .
python2.5
그리고.python2.6
가환 인턴새생을 사용하여 의 새
python2.6
:mkvirtualenv --python=python2.6 yournewenv
최근에 Python의 최신 버전을 발견한 가장 쉬운 방법은 콘다를 통해 콘다 환경에 설치하는 것입니다.
설치 조건(이를 위해 가상 환경이 필요할 수 있음)
pip install conda
Conda 환경 내에 새 Python 버전 설치
수동 다운로드가 필요 없기 때문에 이 답변을 여기에 추가합니다.conda
그렇게 해줄 겁니다
이제 원하는 Python 버전을 위한 환경을 만드십시오.에서는 이예서다사용니다합음을는에다니사합용▁use▁in▁i를 하겠습니다.3.5.2
왜냐하면 이 시점(2016년 8월)에 최신 버전이기 때문입니다.
conda create -n py35 python=3.5.2
콘다가 패키지를 설치할 수 있는 환경을 만들 것입니다.
이 환경을 활성화하려면(리눅스가 아니면 콘다 문서를 확인해야 합니다):
source activate py35
이제 환경에서 pip 또는 conda를 통해 필요한 것을 설치합니다(conda는 더 나은 이진 패키지 지원).
conda install <package_name>
파이엔브가 포함된 전체 가이드
pyenv가 설치되지 않은 경우 pyenv-installer를 사용하여 설치합니다.
$ curl https://pyenv.run | bash
사용자 지정 파이썬 버전을 사용하려면 다음과 같이 하십시오.3.5.6
다음을 사용합니다.
pyenv install 3.5.6
pyenv virtualenv 3.5.6 NAME_OF_YOUR_ENV
cd YOUR_PROJECT_PATH
pyenv local NAME_OF_YOUR_ENV
일반적인 접근 방식은 소스를 다운로드하고 로컬에서 빌드 및 설치한 다음(가상 환경에 직접 설치하지는 않음) 로컬 Python 설치를 사용하여 새 가상 환경을 생성하는 것입니다.일부 시스템에서는 소스에서 빌드하는 대신 미리 빌드된 파이썬을 다운로드하여 설치할 수 있습니다.
이 절차는 Python 2.7을 아무 곳에나 설치하고 사용자 내에서 절대 경로 참조를 제거합니다.env
폴더(가상 환경에서 관리됨).virtualenv도 절대적으로 설치되지 않습니다.
따라서 이론적으로 Python(또는 종속성)이 설치되지 않은 시스템에서 tarball에 최상위 디렉터리를 삭제하고 tarball 내에서 구성된 모든 것을 배포하고 실행할 수 있습니다.
궁금한 점이 있으면 저에게 연락하세요.이것은 제가 진행 중인 더 큰 프로젝트의 일부일 뿐입니다.자, 이제 한 방울...
환경 폴더를 설정합니다.
$ mkdir env $ mkdir pyenv $ mkdir dep
루트 OS를 설치하지 않고도 Python-2.7.3 및 virtualenv를 얻을 수 있습니다.
$ cd dep $ wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz $ wget https://raw.github.com/pypa/virtualenv/master/virtualenv.py
Python-2하여 Python-2.7.3 합니다.
pyenv
디르make clean
두 번째, 세 번째, N번째로 할 경우 선택 사항입니다.$ tar -xzvf Python-2.7.3.tgz $ cd Python-2.7.3 $ make clean $ ./configure --prefix=/path/to/pyenv $ make && make install $ cd ../../ $ ls dep env pyenv
가상 환경 생성
$ dep/virtualenv.py --python=/path/to/pyenv/bin/python --verbose env
python2 내에서 에 대한 합니다.7에 대한 심볼 링크를 수정합니다.
env/include/
$ ls -l env/include/ $ cd !$ $ rm python2.7 $ ln -s ../../pyenv/include/python2.7 python2.7 $ cd ../../
env에서 나머지 파이썬 심볼 링크를 수정합니다.위와 같이 기호적으로 연결된 디렉토리를 삭제하고 다시 만들어야 합니다.또한 심볼릭 링크를 강제로 생성하기 위한 구문이 있습니다.
$ ls -l env/lib/python2.7/ $ cd !$ $ ln -sf ../../../pyenv/lib/python2.7/UserDict.py UserDict.py [...repeat until all symbolic links are relative...] $ cd ../../../
시험
$ python --version Python 2.7.1 $ source env/bin/activate (env) $ python --version Python 2.7.3
알로하.
virtualenwrapper를 사용하고 있으며 $PATH를 수정하고 싶지 않습니다. 다음 방법이 있습니다.
$ which python3
/usr/local/bin/python3
$ mkvirtualenv --python=/usr/local/bin/python3 env_name
pyenv를 사용해도 됩니다.
아나콘다, 자이썬, 파이피 등 다양한 버전이 있습니다.
간한설치처럼 설치pyenv install 3.2.6
pyenv install --list
Available versions:
2.1.3
2.2.3
2.3.7
2.4
2.4.1
2.4.2
2.4.3
2.4.4
2.4.5
2.4.6
2.5
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
2.5.6
2.6.6
...
질문에 2.6을 설치하는 것이 구체적으로 설명되어 있지만, 위의 우수한 답변에 중요한 몇 가지 사항을 추가하여 누군가 이 문제를 발견할 경우에 대비하고 싶습니다.참고로 제 경우는 unbu 10.04 박스에 2.7을 설치하려고 했습니다.
먼저, 여기에 설명된 모든 답변에 대한 제 동기는 데드스네이크의 ppa에서 파이썬을 설치하는 것이 완전히 실패했다는 것입니다.따라서 로컬 Python을 구축하는 것이 방법입니다.
그렇게 시도한 후, 저는 pip의 기본 설치에 의존한다고 생각했습니다.sudo apt-get install pip
이 적당할 것입니다.안타깝게도 이것은 잘못된 것입니다.알고 보니 끔찍한 문제가 너무 많아서 결국 가상 환경을 생성할 수 없었습니다.
그러므로, 저는 pip를 로컬에 설치하는 것을 강력히 추천합니다.wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py && python get-pip.py --user
이와 관련된 질문은 저에게 이런 힌트를 주었습니다.
이제 이것이 작동하지 않으면 Ubuntu 또는 Cent에 대해 확인하십시오.OS가 설치되어 있습니다.설치 대상apt-get
또는yum
그런 다음 Python을 다시 빌드합니다(이미 설치된 경우 제거할 필요가 없습니다. 위에서 수행).get-pip
그것에 대해 불평합니다. 실행하면 확인할 수 있습니다.import ssl
껍질이 벗겨진
마지막으로, 선언하는 것을 잊지 마십시오..local/bin
및 로컬 파이썬에서 경로로, 확인which pip
그리고.which python
.
아니요, 하지만 당신은 당신의 아래에 격리된 Python 빌드(예: ActivePython)를 설치할 수 있습니다.$HOME
디렉토리입니다.
이 접근 방식은 가장 빠르며 사용자가 직접 Python을 컴파일할 필요가 없습니다.
(상여로 ActiveState의 이진 패키지 관리자도 사용할 수 있습니다.)
적절한 답변을 찾지 못했기 때문에 @tozter 답변을 기반으로 하지만 시스템 Python을 사용하지는 않습니다(그리고 많은 Python 구성을 다룰 때 setuptools와 virtualenv를 시스템 수준에서 설치하는 것이 항상 좋은 생각은 아닙니다).
#!/bin/sh
mkdir python_ve
cd python_ve
MYROOT=`pwd`
mkdir env pyenv dep
cd ${MYROOT}/dep
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-15.2.tar.gz#md5=a9028a9794fc7ae02320d32e2d7e12ee
wget https://raw.github.com/pypa/virtualenv/master/virtualenv.py
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tar.xz
xz -d Python-2.7.9.tar.xz
cd ${MYROOT}/pyenv
tar xf ../dep/Python-2.7.9.tar
cd Python-2.7.9
./configure --prefix=${MYROOT}/pyenv && make -j 4 && make install
cd ${MYROOT}/pyenv
tar xzf ../dep/setuptools-15.2.tar.gz
cd ${MYROOT}
pyenv/bin/python dep/virtualenv.py --no-setuptools --python=${MYROOT}/pyenv/bin/python --verbose env
env/bin/python pyenv/setuptools-15.2/setup.py install
env/bin/easy_install pip
echo "virtualenv in ${MYROOT}/env"
여기서 닭 알 문제를 해결하는 비결은 셋업 도구가 없는 가상 환경을 먼저 만드는 것입니다. 그렇지 않으면 실패하기 때문입니다(파이프를 찾을 수 없습니다).pip/wheel을 직접 설치하는 것이 가능할 수도 있지만, 왠지 쉬운 설치가 제일 먼저 생각났습니다.또한 구체적인 버전을 고려하여 스크립트를 개선할 수 있습니다.
NB. 스크립트에서 xz 사용.
먼저 멋진 답변 감사합니다.거의 완벽해요.
공유 호스팅에서 GCC 액세스가 없어 어려움을 겪고 있는 사람들을 위해 스콧 스태퍼드가 언급한 일반 파이썬 대신 액티브 파이썬으로 이동하십시오.다음은 이에 대한 명령입니다.
wget http://downloads.activestate.com/ActivePython/releases/2.7.13.2713/ActivePython-2.7.13.2713-linux-x86_64-glibc-2.3.6-401785.tar.gz
tar -zxvf ActivePython-2.7.13.2713-linux-x86_64-glibc-2.3.6-401785.tar.gz
cd ActivePython-2.7.13.2713-linux-x86_64-glibc-2.3.6-401785
./install.sh
파이썬 디렉터리의 경로를 묻습니다.를 입력하십시오.
../../.localpython
Dting의 답변에서 위의 1단계로 대체하고 그 이후 2단계로 진행하면 됩니다.ActivePython 패키지 URL은 새 릴리스에 따라 변경될 수 있습니다.http://www.activestate.com/activepython/downloads 에서 언제든지 새 URL을 얻을 수 있습니다.
URL에 따라 수신된 파일에 따라 tar 및 cd 명령어의 이름을 변경해야 합니다.
virtualenv --virtualenv=."localpython/bin/sys2.7" 환경
언급URL : https://stackoverflow.com/questions/5506110/is-it-possible-to-install-another-version-of-python-to-virtualenv
'programing' 카테고리의 다른 글
HttpContext입니다.현재의.세션이 Ashx 파일에서 null입니다. (0) | 2023.07.30 |
---|---|
Python에서 목록 요소를 별도의 줄로 인쇄 (0) | 2023.07.30 |
단일 문자로 문자열을 만들려면 어떻게 해야 합니까? (0) | 2023.07.30 |
빈 문자열에 대한 병합? (0) | 2023.07.30 |
Angular 9 - 처리되지 않은 예외로 NGC가 실패함 (0) | 2023.07.30 |