컴퓨터 포맷 이후 One-PC 환경으로 개발 환경을 분리 구축하고자 다양한 방법을 시도해보았다.
Pygame에 필요한 비디오 드라이버를 못잡기 때문에 포기했다.
macOS를 돌릴 수 있는 Docker 이미지도 있었지만, 기존에 사용하던 가상 머신 방식과 별 차이가 없어서 역시 걸렀다.
conda가 지금까지 썼던 가장 괜찮았던 환경 분리 방법이었으나, conda로 환경을 구축할 시, numpy, scipy등의 데이터 분석용 라이브러리가 같이 설치된다는 문제가 있어 버리기로 했다.
Python에서 공식으로 지원하는 가상환경 구축 방법이라기에 설치해서 구성하려고 했지만, 지원이 이전에 끊겨서 가상 환경 생성을 해도 pygame 모듈이 import되지 않는 문제가 있었다.
그래서 마지막으로 시도한 방법은 pyenv와 venv를 이용하여 가상환경을 구축하는 것이었다. pyenv를 이용해 Python 버전을 3.10으로 고정하고, venv로 필요한 pip 패키지만을 설치하는 방식을 사용했다.
필자가 사용한 컴퓨터 환경은 macOS 14 Sonoma, M2, RAM 16GB였다.
먼저 Homebrew를 이용해 pyenv를 설치했다.
brew install pyenv
그런 후 아래의 명령어를 이용해 환경설정을 한다.
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
source ~/.zshrc
이제 pyenv를 이용해 내가 사용할 python 3.10을 설치해준다.
pyenv install 3.10
설치가 완료되면 python 3.10을 global로 설정해준다.
pyenv global 3.10
이제 venv를 이용해서 python의 패키지를 분리할 수 있는 가상환경을 생성한다. 먼저 내가 프로젝트를 만들 폴더로 이동해 다음과 같이 입력한다.
python3 -m venv env-pygame
그러면 작업에 필요한 폴더와 가상환경 공간이 생성된다.
이 가상 환경을 사용하기 위해서는 아래와 같이 입력한다.
source env-pygame/bin/activate
그러면 프롬프트 앞에 (env-pygame)이 붙으며 가상환경이 시작된다.
이제 다음을 입력해 pygame을 설치한다.
pip install pygame
가상환경을 종료하고 싶다면 아래와 같이 입력한다.
deactivate