본문 바로가기

raspberrypi/raspbian

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

-- 20/01/25 추가--

raspbian buster, release 10 에는 기본으로 python3.7.3이 설치되 있으니

os 업데이트를 추천드립니다


jupyter notebook 을 위해 설치하는 거라면  python 3.6을 추천한다
python 3.7은 아직 오류해결이 안된다

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi


애석하게도 apt-get 으로 python 3.6 이상을 설치 할 수 없다
번거롭지만 소스파일을 받아서 직접 빌드하고 설치해야한다

 

https://www.python.org/downloads/

python 홈페이지에 가보니 현재 최신은 3.8 인듯..

Ubuntu 16.04 커뮤니티에서 python 3.6을 설치하기 위해 
써드파티 PPA를 추가하면 된다는 글을보고 해봤는데
실패했다
add-apt-repository 설치해논걸로 만족하기로..

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

add-apt-repository 가 없어 설치..
pi@rasp-dev:~ $ sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:jonathonf/python-3.6


설치 준비

make 를 하기 위해 관련 패키지를 설치해야한다

sudo apt-get install build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev -y

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

설치할게 많으니 오래도 걸린다..

• python 3.6 설치
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
tar xf Python-3.6.5.tar.xz
cd Python-3.6.5.tar.xz
./configure
make -j 4
sudo make altinstall

• python 3.7 설치
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz
tar xf Python-3.7.2.tar.xz
cd Python-3.7.2
./configure
make -j 4
sudo make altinstall

차이는 다운받는 파일명과 디렉토리명만 다르고 동일하다

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

하던데로 utils 디렉토리로 작업공간을 변경하고 python 3.7.2를 다운받아서
진행 설정은 잘모르니 configure 만 해서 진행했다

후에 3.6 설치할때는 configure --enable-optimizations 
옵션을 줘서 해봤는데
make 시간이 2-3배는 늘어났다
사실 무슨 옵션인지 모른다

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi


make -j 4
build 가 끝나면 바로 설치를 진행해주면 된다

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

sudo make altinstall

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi


설치 끝
하지만 버전확인을 하면 아직 3.5.3 으로 나오니

3.7을 바라보도록 해야하는데

심플하게 2가지 방법이 보인다

alias

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

alias는 profile 이나 .bashrc 에다
alias python3='python3.7' 을 추가해주고
source /etc/profile OR source ~/.bashrc

046. Raspberry Pi 라즈베리 파이 - how to install python 3.6 or 3.7 on raspberry pi

확인해보면 버전이 변경된 걸 확인할 수 있다

 

alternatives

좀 귀찮지만 목록화 하고 선택할 수 있게 해주는 툴로 보인다
예전에 jeny 였나 java 버전 선택할 수 있게 해주던 툴과 비슷해 보인다

default python 변경

추가
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
sudo update-alternatives --install /usr/bin/python python /usr/local/bin/python3.6 3

변경
sudo update-alternatives --config python

삭제
sudo update-alternatives --remove python /usr/bin/python2.7
sudo update-alternatives --remove python /usr/bin/python3.5

리스트 추가는 --install 옵션 파일위치 이름 실제경로 순선 으로 추가하고
config 이름 으로 순번을 변경하면 되는것 같다
삭제는 --remove 이름 실제경로 삭제하면 된다


참고
https://github.com/instabot-py/instabot.py/wiki/Installing-Python-3.7-on-Raspberry-Pi
https://medium.com/@isma3il/install-python-3-6-or-3-7-and-pip-on-raspberry-pi-85e657aadb1e
https://www.ramoonus.nl/2018/06/30/installing-python-3-7-on-raspberry-pi/
https://linuxconfig.org/how-to-change-from-default-to-alternative-python-version-on-debian-linux