Search
Duplicate

Python 3.6/3.7 빌드해서 설치하기

Created
4/30/2021, 6:07:00 PM
Tags
Empty
3.6보다는 3.7이 좀더 호환성 측면에서 좋은 것 같다.
일반 Linux에서는 그냥 엄청 쉽게 apt-get install python3.6 하면 바로 설치가 되는 것 같다. 그러나 Bela에서는 인식이 안된다. 아마도 CPU종류가 달라서 그런것 같다.

GCC version에 대해서

만약 python에서 사용하는 gcc version을 바꾸고 싶으면, build하기전에 미리 gcc를 버전업해서 설치한 다음, 그걸 이용해서 빌드해야한다.
라즈베리파이용으로 올라온 binary를 동일하게 설치할 수 있다.
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 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 ./configure make sudo make altinstall sudo rm -r Python-3.6.5 rm Python-3.6.5.tar.xz
Bash
Pre-requisites for python 3.7
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus sudo apt-get install libncursesw5-dev libgdbm-dev libc6-dev sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev sudo apt-get install libssl-dev openssl sudo apt-get install libffi-dev
Bash
wget https://www.python.org/ftp/python/3.7.10/Python-3.7.10.tgz tar xf Python-3.7.10.tgz cd Python-3.7.10 ./configure make sudo make altinstall sudo rm -r Python-3.7.10 rm Python-3.7.10.tgz
Bash
기존 설치된 python3.5을 삭제하면 절대로 안된다. 이걸 삭제하는 순간 python기반으로 구현된 운영체제의 일부 기능이 동작을 하지 않으면서 큰 문제가 생기게 된다. 따라서 아래와 같이 config를 통해 python으로 호출되는 binary를 수정해야한다. (단, 아래에서 python3.6 이나 3.7이 실제로 설치된 경로는 유저마다 다르므로, which python3.7 등으로 찾아낼 것)
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 3 sudo update-alternatives --config python3 -> Then select the number of "/usr/bin/python3.6" or "/usr/bin/python3.7"
Bash

pip 설치하기

위와 같이 python version을 올리고나면 pip가 사라져있어서 다시 설치해줘야한다.
wget https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py
Bash
!/usr/bin/python3.6 -Es 으로 수정
TOP