본문 바로가기

Python/pyenv

pyenv with Ubuntu(Linux/WSL2)

728x90
반응형

pyenv를 지원하는 github를 들어가보면(https://github.com/pyenv/pyenv),

macOS의 경우 간단한 명령어로 pyenv 설치가 가능한데 반해

linux의 경우 github에서 소스코드를 클론하고, 클론한 경로를 잡아주는 설정을 하는 방식으로 pyenv 를 설치해야 합니다.

 

실습환경:

Windows 11 WSL2 Ubuntu 22.04 환경에서 pyenv를 설치

pyenv 설치 전 준비(기반 패키지 설치)

우선 pyenv를 구동할 수 있도록 기본적으로 필요한 패키지들을 먼저 설치

sudo apt-get update

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev liblzma-dev


pyenv 설치

$HOME 경로에 .pyenv가 없는 경우 아래와 같이 명령어로 설치

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

 

$HOME 경로에 .pyenv가 존재하는 경우 아래와 같이 명령어로 설치

git clone https://github.com/pyenv/pyenv.git

 

clone한 pyenv가 있는 .pyenv 디렉토리를 환경변수에 추가 (아래 명령어는 bash  shell기준)

# nano ~/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

 

터미널을 종료하고 다시 키거나 / 아래 명령어를 통해서 설정 적용

source ~/.bashrc
# 또는
exec "$SHELL"

Pyenv 사용

pyenv로 설치가능한 python 버전 확인

pyenv install --list

 

pyenv로 python 설치 (ex. 3.11.1 버전)

pyenv install 3.11.1

 

위 명령어 수행 중에 C compiler가 없다고 오류가 나는 경우가 있다.

gcc가 기본으로 안깔려 있는 경우 다음과 같이 gcc 설치

sudo apt update
sudo apt install gcc

 

pyenv로 설치된 python 버전들 확인

pyenv versions

 

설치된 버전 중에 원하는 python version으로 변경하기 (ex. 3.11.1 버전)

pyenv shell 3.11.1

 

global, local version 설정

전역적으로 사용할 버전을 설정할 때는 global

특정 디렉토리에서 사용할 버전을 설정할 때는 해당 디렉토리로 이동해서 local 명령어를 사용합니다.

(ex 전역으로 사용할 버전은 3.11으로 설정, ~/test 디렉토리에서는 3.8로 설정)

pyenv global 3.11.1

# mkdir ~/test
# cd ~/test
pyenv local 3.8.10

* 주의

pyenv shell 로 특정 version으로 진입하면 버전 확인을 했을 때 경로를 global로 가든 local로 가든 shell 로 진입한 버전이 먼저 잡힙니다. 특정 directory 버전 설정과 전역 버전 설정이 제대로 되었는지 확인해보려면 shell을 종료했다 해보면 쉽게 확인할 수 있습니다.

 

 

참고)

클론을 받아서 설치하는 대신에 아래 curl 명령어로도 설치가 가능하다고 하는데  실습은 해보지 않았습니다.

이방법으로도 해보시길 추천해봅니다.

(clone받는 것만 대신하는 것이지, ~/.bashrc에 .pyenv 경로 설정 해주는 작업은 하셔야 합니다.)

$ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash

 

 

참고 사이트:

https://github.com/pyenv/pyenv

https://velog.io/@ohdowon064/Python-install-pyenv-in-ubuntu

https://wikidocs.net/10936

728x90
반응형

'Python > pyenv' 카테고리의 다른 글

pyenv with Windows  (0) 2022.12.02