Programming/Python

Q.맥 실리콘 (Macbook Pro M1)에서 파이썬 3.7 버전의 가상환경 만드는 방법은?

makeitworth 2022. 11. 1. 14:54

 

환경 

  • MacOS v12.6
  • Apple M1 Pro chip

파이썬 가상환경 버전 관리를 맥에서 아나콘다 가상환경 구성 -> 윈도우에서 virtualenv 구성으로 하다가 업무용 컴퓨터가 맥 M1으로 바뀌면서 그냥 virtualenv으로 가상환경 구성을 하고 파이썬 버전은 3.9을 고정으로 사용하고 있었다. 

 

참고

맥, 리눅스에서 python anaconda 가상 환경 생성, 확인, 삭제 하기 (mac, linux)

Q. jupyter notebook 파일을 실행할 때 새로운 가상환경을 만들고 이용하는 방법은?

Q. 윈도우 환경에서 아나콘다 없이 가상환경 설정, 주피터 노트북 사용하는 방법은?

 

 

그런데 본격적으로 여러 모델들을 다루게 되면서 3.7 이하의 파이썬 버전에서 빌딩한 모델을 테스트해보게 되었는데 , 기존에 잘써오던 virtualenv 구성 명령어

virtualenv [가상환경이름] --python=python[버전 넘버링]

가 파이썬 3.7 이하에서는 동작하지 않는 것을 알게 되었다. 실리콘 칩 기반의 M1에서는 그냥 깔리진 않는다고...

 

A.

검색을 좀 해본 결과 pyenv, pyenv-virtualenv를 활용해서 문제 해결이 가능했다.

 

먼저 homebrew를 활용에 라이브러리를 설치한다.

 %  brew install pyenv pyenv-virtualenv

 

아래 경로를 ~/.zshrc에 추가한다.

 export PATH="$HOME/.pyenv/bin:$PATH"
 eval "$(pyenv init -)"
 eval "$(pyenv virtualenv-init -)"

셸을 재시작한다.

exec "$SHELL"

pyenv virtualenv를 활용해 새 가상환경을 만든다.

pyenv virtualenv [버전 넘버] [가상환경 이름]

가상환경의 activate은

pyenv activate [가상환경 이름]

 

가상환경의 deactivate은

source deactivate

으로 제어할 수 있다. 참고로 가상환경이 설치되는 경로는 user 홈 디렉터리/.pyenv/versions/[파이썬 버전 넘버]/envs/ 이다.

 

 

참고

https://github.com/pyenv/pyenv-virtualenv

https://stackoverflow.com/questions/71577626/issues-installing-python-3-8-10-on-macos-12-3-monterey

https://leeminjoo.github.io/mac-setting/2021/03/04/Setting-M1-Mac.html