Mac에서 python downgrade 방법

KiJeong·2024년 4월 22일

node-gyp 로 빌드 중 distutils를 못찾는 에러가 발생했습니다.
ModuleNotFoundError: No module named 'distutils'

Traceback (most recent call last):
  File "/Users/jeki/node-v16.20.1-darwin-arm64/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 42, in <module>
    import gyp  # noqa: E402
    ^^^^^^^^^^
  File "/Users/jeki/node-v16.20.1-darwin-arm64/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 9, in <module>
    import gyp.input
  File "/Users/jeki/node-v16.20.1-darwin-arm64/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 19, in <module>
    from distutils.version import StrictVersion
ModuleNotFoundError: No module named 'distutils'

원인은 python v3.12 부터 distutils이 제거되었기 때문이라고 합니다. 따라서 python 를 python 3.11 로 다운그레이드 하는 방법을 알아보았습니다.

  1. macOS에서 Homebrew를 사용하여 pyenv를 설치합니다.
brew install pyenv
  1. 설치를 확인하고 사용 가능한 python 버전을 확인하세요.
pyenv install --list
  1. 필요한 python 버전을 설치하세요.
pyenv install 3.11
  1. 설치 후 전역 버전으로 설정하세요.
pyenv global 3.11
  1. pyenv가 관리하는 python 버전들이 우선적으로 시스템에 의해 인식되도록 환경 변수 PATH를 조정합니다.
eval "$(pyenv init --path)"
  1. 시스템이 사용 중인 현재 python 버전을 확인합니다.
python3 --version

0개의 댓글