Ubuntu에서 Python 버전 변경하기

황동준·2021년 3월 1일
0

쉽지만 정확한 자료가 없는 Python 버전업데이트
해당 정보는 AWS LightSail에서 배포한 Linux Ubuntu 16.04 OS에서 진행되었습니다.

Python 받아오기

wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz

tar xvf Python-3.6.0.tar.xz
cd Python-3.6.0/
./configure
sudo make altinstall

이러면 python3.6 -V하면 python3.6이 떠야 정상이다.
이때 분명 configure 에서 오류가 나고, make에서 한번 더 오류가 발생할 수 있는데, 이는 설치를 해줘야 한다.

sudo apt install build-essential checkinstall
sudo apt install libreadline-gplv2-dev libncursesw5-dev

sudo apt install libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

그래서 위 친구들을 해줘야 하는데, 각각의 package가 버전이 update가 안되어 있다면 따로따로 설치해서 update하기를 바란다.

만약 python3 -V, python -V를 입력한다면 예전 버전이 아직도 뜰 것이다. 그렇게 되면 python3, python 명령어를 입력할 때 해당 버전으로 프로그램이 로드가 된다. 업데이트 된 버전으로 하려면 다음과 같다.(참조)

먼저 ls -al python3(or python)을 입력해준다. 그러면 python3 라는 심볼릭 링크가 가리키는 python 버전을 확인할 수 있다.

아마 구버전을 가리키고 있을 것이다.

그렇다면, 가리키는 것을 바꿔주기 위해서 우리는 update-alternatives 를 이용한다. 이용법은 위 링크에서 더 자세히 알려준다. alternative에 등록하고 필요한 버전의 python을 선택하여 ptyhon3 -V를 친다면 바뀌어 있는 것을 확인할 수 있다.

$ sudo update-alternatives --install /usr/bin/python python3 /usr/bin/python3.5 1
$ sudo update-alternatives --install /usr/bin/python python3 /usr/bin/python3.6 2

여기서 python3.6의 위치는 which python3.6으로 찾을 수 있다. 그렇게 위의 명령어를 살짝만 수정해주자.

sudo update-alternatives --config python를 입력하여 2번을 선택해주면 바뀌어 있을 것이다.

근데 만약 심볼릭 링크자체가 아예 다른곳을 가리키고 있다면?

ln -Tfs [새로바꿀경로] [바꿀심볼릭링크]

를 해주자. 만약 아무런 심볼릭 링크도 없다면?

ln -s <target> <link>

로 심볼릭 링크를 생성해주자. 참조

profile
부담없이 기록하기

0개의 댓글