Owl Life

Ubuntu 16.04에서 Python 3.7 설치 본문

Python

Ubuntu 16.04에서 Python 3.7 설치

Owl Life 2020. 1. 28. 21:25
반응형

들어가며...

django를 사용하려면 Python이 최소 3.7 버전이 설치 되어 있어야 합니다. 하지만 우분투 16.04에서 지원하는 버전은 3.5이기 때문에 추가로 설치를 하여야 합니다.

 

본인의 PC에 설치되어 있는 버전을 먼저 확인 해보겠습니다.

owllife@owllife-ubuntu:~$ python3
Python 3.5.2 (default, Oct  8 2019, 13:06:37) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

3.5가 설치 되어 있는것을 확인하였습니다.

 

3.7 버전을 설치 할 때 한가지 유의 해야 할 점은,

우분투 16.04의 많은 시스템 프로그램(터미널, 프로그램 업데이트 등)에서 파이썬 3.5를 사용하고 있습니다.

만약, 파이썬3 default 버전을 현재처럼 3.5가 아닌 3.7로 변경하게 되면 시스템 프로그램등이 제대로 동작하지 않을 수 있습니다.

시스템 재부팅 후 갑자기 프로그램이 동작되지 않는 상황을 맞이 할 수 있기 때문에 "update-alternatives" 를 이용하여 강제로 변경하지 않도록 유의하여야 합니다.

 

파이썬 3.7 설치

아래 명령어를 통하여 설치를 할 수 있습니다.

$ sudo apt update
$ sudo apt install software-properties-common

$ sudo add-apt-repository ppa:deadsnakes/ppa

$ sudo apt update
$ sudo apt install python3.7

 

python3.7이 설치 되었지만, 파이썬3의 기본 버전으로 변경되지 않았는지 확인을 하기 위하여 터미널에서 확인을 해보겠습니다.

owllife@owllife-ubuntu:~$ python3
Python 3.5.2 (default, Oct  8 2019, 13:06:37) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

파이썬 3.7이 설치 되었지만, 디폴트 버전은 여전히 3.5로 표시되는것을 확인하였습니다. 즉, 시스템 응용 프로그램들은 이전과 마찬가지로 정상적으로 동작하게 됩니다. 

 

venv 설치

파이썬으로 개발하다보면 별도의 고립된 공통의 환경을 만들어두고 개발하는 경우가 많이 있습니다.

venv를 많이 사용하는데 이 역시 3.7 버전에 맞추어 설치하도록 하겠습니다. 터미널에서 아래 명령어를 입력합니다.

$ sudo apt-get install python3.7-venv

만약, python3.7-venv로 설치하지 않고 python3-venv 명령어로 설치하게 되면, 현재 시스템 디폴트 버전으로 잡혀 있는 python3.5 버전에 맞추어서 설치 되기 때문에 사용 할때 django와 같이 그 이상의 파이썬 버전이 필요한 경우에는 정상적으로 동작하지 않게 됩니다.

 

예를 들어 아래와 같은 에러 메시지를 보게 됩니다.

$ python3.7 -m venv my_common_env

Error: Command '['/home/owllife/PycharmProjects/my_common_env/bin/python3.7', 
       '-Im', 'ensurepip', '--upgrade', '--default-pip']' 
       returned non-zero exit status 1.

 

정상적으로 python3.7 및 venv가 설치 되었다면 아래 명령어를 통하여 가상 환경을 생성 할 수 있습니다.

$ python3.7 -m venv my_common_env

 

venv 활성화

이제 activate 명령어를 실행하고 파이썬 3.7이 사용 중인지 확인 해보겠습니다.

위 이미지의 명령어대로 방금 생성한 env를 활성화 시키면 명령어 프롬프트 앞쪽에 (my_common_env)와 같이 prefix가 붙게 됩니다. 이후에는 python 명령어만 입력 했을뿐인데 3.7 버전으로 실행 되는것을 확인 할 수 있습니다. django를 사용한다면 이 상태에서 django를 설치하고 기본 프로젝트 등을 생성하여 진행하시면 됩니다.

 

pip 버전 확인

(my_common_env) owllife@owllife-ubuntu:~/PycharmProjects$ pip -V
pip 19.2.3 from /home/owllife/PycharmProjects/my_common_env/lib/python3.7/site-packages/pip (python 3.7)

파이썬의 여러 라이브러리르 설치 하기 위하여 pip를 사용하는데 pip가 파이썬 3.7 버전을 정확히 매핑하고 있는지 확인하였습니다.

반응형
Comments