Ubuntu14.04에서 Python3기반 virtualenvwrapper 설치

우분투 14.04에는 기본적으로 Python2와 Python3이 설치되어있다.

그러나 pip로 virtualenv를 설치할 경우 기본적으로 python2를 가상환경의 기본 Python으로 잡게 되는데,
이번 게시글에서는 mkvirtualenv명령어의 기본값을 python3으로 설정하는 방법을 안내한다.

따라서 virtualenv를 사용하기 위해서는 APT를 통해 다음 모듈들을 설치한다.

apt update && upgrade




apt install python-dev python3-dev python3-pip

(참고: python-pip는 python2용 pip, python3-pip는 python3용 pip3을 설치한다.)

pip3 install virtualenv virtualenvwrapper

설치가 완료된 후, nano / vi / vim 등의 편집기로

bash 쉘을 사용할 경우

nano ~/.bashrc

zsh 쉘을 사용할 경우

nano ~/.zshrc

편집기에 들어가

# python virtualenv settings
export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON="$(command \which python3)"  # location of python3
source /usr/local/bin/virtualenvwrapper.sh

위 내용을 붙여준다.

네번째 문장에서의 virtualenvwrapper.sh는

find /usr -name virtualenvwrapper.sh

을 통해 나오는 스크립트의 위치로 지정해 주면 된다.

bashrc나 zshrc의 수정이 끝난 경우


mkdir ~/.virtualenvs

를 통해 virtualenv들이 담길 폴더를 만든다.

이제 쉘을 종료한 후 다시 연결한 후


mkvirtualenv 가상환경이름

하면 ~/.virtualenvs 안에 가상환경이 생긴다.


workon 가상환경이름

을 통해 가상환경을 활성화 시킬 수 있으며, 가상환경 이름을 입력하지 않는 경우 가상환경의 리스트가 출력된다.

가상환경을 빠져나오기 위해서는


deactivate

를 입력하면 된다.

mac OS X에서 pip virtualenvwrapper 설치 시 uninstalling six 에서 Exception 발생 시

스크린샷 2016-07-22 00.16.03.png

Mac OS X El Capitan(10.11.5)에서 pip로 virtualenvwrapper를 설치 시도시 six-1.4.1버전을 제거하는데 권한이 없다고 나온다.

Sudo를 통해 관리자 권한으로 실행해도 같은 오류가 발생하는데, 이것은
https://github.com/pypa/pip/issues/3165
이슈에서 답을 찾을 수 있다.

바로 Mac OS X El Capitan의 System Integrity Protection때문이다. ROOT 계정으로도 제거하지 못하기 때문에, 해결방법은 다음과 같다.

pip install virtualenvwrapper --ignore-installed six

위의 옵션으로 내장된 모듈 six를 건너뛰고 설치하게 만드는 것이다.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×