
python3.7 설치 및 2.x 버젼 변경, 오류 대처 & pip 설치 경로 변경
pc 환경 : Ubuntu 18.04 melodic
velog.io
python3.7 설치 및 2.x 버젼 변경, 오류 대처 & pip 설치 경로 변경
pc 환경 : Ubuntu 18.04 melodic
velog.io
python3.7 설치 및 2.x 버젼 변경, 오류 대처 & pip 설치 경로 변경
pc 환경 : Ubuntu 18.04 melodic
velog.io
python3.7 설치 및 2.x 버젼 변경, 오류 대처 & pip 설치 경로 변경
pc 환경 : Ubuntu 18.04 melodic
velog.io
pc 환경 : Ubuntu 18.04 melodic
python
1. Python3.7 설치
$ sudo apt-get install -y build-essential
$ sudo apt-get install -y checkinstall
$ sudo apt-get install -y libreadline-gplv2-dev
$ sudo apt-get install -y libncursesw5-dev
$ sudo apt-get install -y libssl-dev
$ sudo apt-get install -y libsqlite3-dev
$ sudo apt-get install -y tk-dev
$ sudo apt-get install -y libgdbm-dev
$ sudo apt-get install -y libc6-dev
$ sudo apt-get install -y libbz2-dev
$ sudo apt-get install -y zlib1g-dev
$ sudo apt-get install -y openssl
$ sudo apt-get install -y libffi-dev
$ sudo apt-get install -y python3-dev
$ sudo apt-get install -y python3-setuptools
$ sudo apt-get install -y wget
그리고 weget으로 python3.7 소스를 받고 설치한다.
$ wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
$ tar xvf Python-3.7.0.tar.xz
$ cd Python-3.7.0
$ ./configure
$ sudo make altinstall
python3.7이 설치되었는지 확인한다.
$ python3.7 --version
Python 3.7.0
2. 파이썬의 실행 위치 및 Alternative 설명
$ python -V
Python 2.7.14
$ which python
/usr/bin/python
ls -al /usr/bin/python로 어떤 파일을 가리키는지 확인할 수 있다. 이 파일이 가리키는 파일은 /usr/bin/python2.7 이다.
$ ls -al /usr/bin/python
lrwxrwxrwx 1 root root 24 4월 18 19:28 /usr/bin/python -> /usr/bin/python2.7
그리고 ls /usr/bin/를 보면 다양한 버전의 파이썬 실행파일들이 있다.
$ ls /usr/bin/ | grep python
python
python2
python2.7
python3
python3.6
.....
PC에는 여러버전의 파이썬이 설치되어있고 Alternative로 주로 사용할 파이썬을 선택하는 방식으로 관리를 하고 있다.
update-alternatives는 다음과 같은 기능을 하여 버전 관리를 쉽게할 수 있다.
현재 /usr/bin/python => /usr/bin/python2.7 를 가리키고 있다.
파이썬3.6로 변경하려면 /usr/bin/python => /usr/bin/python3.6 를 가리키도록 변경해야 한다.
파이썬3.7로 변경하려면 /usr/bin/python => /usr/bin/python3.7 를 가리키도록 변경해야 한다.
update-alternatives에 여러버전의 파이썬을 등록하고 변경하는 것을 하자.
3. Update-alternatives로 파이썬 버전 등록 및 변경
먼저 파이썬을 등록하기 전에 이미 등록된 것이 있는지 확인해야 한다.
update-alternatives --config python 옵션은 python 버전을 변경하는 옵션. 만약 아래 error 로그처럼 설정된 것이 없다고 한다면 아무것도 등록된 것이 없다는 의미.
$ sudo update-alternatives --config python
update-alternatives: error: no alternatives for python
update-alternatives --install [symbolic link path] python [real path] number 명령어는 실행파일을 등록하는 명령어.
아래와 같이 입력하면 2.7과 3.6버전이 update-alternatives에 등록된다. 물론 파이썬 2.7과 3.6이 설치되어 있어야 합니다. 만약 설치위치가 다르다면 자신의 PC에 설치된 path로 변경해야 한다.
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
그리고 update-alternatives --config python을 다시 입력하면 등록한 파이썬 버전을 선택하는 메뉴가 나온다.
$ sudo update-alternatives --config python
There are 2 choices for the alternative python (providing /usr/bin/python).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/python3.6 2 auto mode
1 /usr/bin/python2.7 1 manual mode
2 /usr/bin/python3.6 2 manual mode
Press <enter> to keep the current choice[*], or type selection number: 2
원하는 메뉴의 번호를 입력하고 파이썬 버전을 확인해 보자. 파이썬의 link를 따라가보면 alternatives 명령어로 설정한 /usr/bin/python3.6를 가리킨다.
$ python --version
Python 3.6.3
$ ls -al /usr/bin/python
lrwxrwxrwx 1 root root 24 4월 18 19:28 /usr/bin/python -> /etc/alternatives/python
$ ls -al /etc/alternatives/python
lrwxrwxrwx 1 root root 18 9월 2 13:59 /etc/alternatives/python -> /usr/bin/python3.6
※ 오류
1) /usr/bin/python: bad interpreter: No such file or directory 오류 발생 시
/usr/bin/python: bad interpreter: No such file or directory
아래와 같이 심볼릭 링크를 생성하면 문제를 해결할 수 있다.
$ ln -s /usr/bin/python2.7 /usr/bin/python
python의 기존 경로를 python2.7로 변경한다는 뜻. 마찬가지로 python3의 경로도 이와 똑같은 방식으로 변경 가능하다.
참고 명령어
$ ls -l /usr/bin/py* //심볼릭 링크 조회 $ rm -f /usr/bin/python2.6 //심볼릭 링크 삭제
pip
pip3 설치
일단은 pip3를 설치한다.
$ sudo apt-get install python3-pip
그리고 업그레이드.
$ sudo pip3 install --upgrade pip
그리고 numpy, scipy, matplotlib 등 원하는 package들을 깔아주면 된다.
$ sudo pip3 install numpy
$ sudo apt-get install python3-scipy
$ sudo apt-get install python3-matplotlib
pip 설치 경로 바꾸기
본인의 컴퓨터에 다양한 파이썬 버전이 존재하면, 각각의 파이썬에 맞는 라이브러리가 설치해야 한다.
하지만 pip 명령어는 기존에 설정된 경로에만(예를 들어, python3.6 혹은 python 2.7) 계속 설치가 되기 때문에 만약 아무리해도 라이브러리가 pip로 3.x 혹은 2.x에 깔린다면, 설치 경로를 바꿔주는 명령어로 설치해야 한다.
$ pip install --target=<python 경로> <패키지명>
예) 필자의 usr은 lyu, 설치 라이브러리는 tensorflow
$ pip install --target=/home/lyu/.local/lib/python2.7/site-packages tensorflow
이 명령어로 기존 python 3.6에서

python 2.7에 텐서플로우가 설치 된다.

관심 있을 만한 포스트
0개의 댓글
