반응형
보통 파이썬 개발환경을 구축하는데 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-dev
pyenv설치는 아래와 같다.
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.2
Downloading Python-3.5.2.tar.xz...
-> https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz
Installing Python-3.5.2...
patching file Lib/venv/scripts/posix/activate.fish
Installed 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을 실행해본다.
$ python
Python 3.5.2 (default, Jun 4 2017, 05:30:18)
[GCC 5.4.0 20160609] on linux
Type "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 -V
Python 3.5.2
# 종료
$ pyenv deactivate
반응형