반응형
보통 파이썬 개발환경을 구축하는데 virtualenv를 사용한다. 프로젝트별 설치 패키지를 분리해서 관리하기 위해서이다. 개발하는데 파이썬 버전이 문제가 되서 새로 설치하려다가 pyenv를 통해 파이썬 버전도 관리할 수 있는 것을 봤다. 이것을 사용해서 프로젝트에 파이썬 버전까지 따로 관리를 할 수 있게 됐다.
설치
설치는 ubuntu18.04, 16.04 모두 확인했다.
설치하기 전에 아래의 패키지들을 설치해야한다. 그래야 pyenv를 정상적으로 사용할 수 있다.
xxxxxxxxxx$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-devpyenv설치는 아래와 같다.
x
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile$ source ~/.bash_profile설치가 완료되면 아래와 같이 확인할 수 있다.
x
$ pyenv versions #설치 확인>> * system (set by /home/nelp/.pyenv/version)
파이썬 설치
이제 pyenv로 파이썬을 설치할 수 있다. 설치는 pyenv install {python version} 으로 할 수 있다. {python version} 에 설치를 원한느 파이썬 버전을 입력하면 된다.
xxxxxxxxxx# 설치 명령어...$ pyenv install 3.5.2Downloading Python-3.5.2.tar.xz...-> https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xzInstalling Python-3.5.2...patching file Lib/venv/scripts/posix/activate.fishInstalled Python-3.5.2 to /home/nelp/.pyenv/versions/3.5.2$ pyenv versions # 설치된 버전을 확인할 수 있다.* system (set by /home/nelp/.pyenv/version) 3.5.2$ pyenv shell 3.5.2 # python을 실행해본다.$ pythonPython 3.5.2 (default, Jun 4 2017, 05:30:18)[GCC 5.4.0 20160609] on linuxType "help", "copyright", "credits" or "license" for more information.>>>
pyenv-virtualenv
pyenv를 통해서도 pyenv-virtualenv를 통해 가상환경을 사용할 수 있다.
설치
xxxxxxxxxx$ git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile$ source ~/.bash_profile가상환경 생성
가상환경은 아래와 같이 생성할 수 있다.
pyenv virtualenv {python-version} {env-name}
{python-version}에 원하는 파이썬 버전을 입력한다. 해당하는 버전이 pyenv로 설치되어 있어야한다.{env-name}: 생성할 가상환경 이름을 입력한다.
x
$ pyenv virtualenv 3.5.2 test-env$ pyenv versions system* 3.5.2 3.5.2/envs/test-env test-env (set by PYENV_VERSION environment variable)가상환경 사용
virtualenv와 마찬가지로 activate를 통해 가상환경을 활성화 할 수 있다. 종료는 동일하게 deactivate이다.
xxxxxxxxxx# 시작$ pyenv activate test-env(test-env) $ pyenv versions system 3.5.2 3.5.2/envs/test-env* test-env (set by PYENV_VERSION environment variable)(test-env) $ python -VPython 3.5.2# 종료$ pyenv deactivate반응형