M1에서 python사용
[M1
python
]
최근에 Apple M1에서 빅데이터 분석을 돌려볼 일이 있어 python3.9를 설치하고 아래 라이브러리들을 설치했는데… 설치가 안되는 것이다.
- pandas
- numpy
- Scikit-learn
- matplotlib
인터넷에 검색을 해 보니 이에 대한 해결 방법이 몇 가지 돌아다녀 이를 정리해 본다.
아예 intel로 띄우는 방법
M1의 arm64 확인은 아래와 같다.
>uname -m
arm64
arch
명령을 이용하여 현재 터미널을 arm에서 x86으로 변경한다(rosetta활용).
>arch -x86_64 zsh
>uname -m
x86_64
이러면 기존에 pip로 설치했던 라이브러리들 그전처럼 pip install
로 쓸 수 있다.
하지만 여기에는 몇 가지 단점 존재하니…
- Rosetta 에뮬레이션의 성능적 한계
- 실행할 때 마다 arch로 바꿔줘야 하는 불편함
그래서 라이브러리별 각개 격파를 시도했다.
라이브러리별 각개 격파
brew install
을 통해 설치 할 수 있는 것이 있다. 이를 먼저 설치 (Homebrew 페이지에서 확인)
- numpy
- scipy
pandas와 scikit-learn은 설치시 blas가 맞지 않아 발생하는 문제이다.
brew로 openblas를 설치하고 이를 활용하여 pandas와 scikit-learn를 설치한다.
>brew install openblas
>OPENBLAS="$(brew --prefix openblas)" pip3 install pandas
>OPENBLAS="$(brew --prefix openblas)" pip3 install sklearn
(참조 : https://stackoverflow.com/questions/65825346/pip-install-pandas-results-in-error-python3-8-pycharm-apple-silicon)
Matplotlib도 pip로는 바로 설치가 안되는데 이는 BigSur에서 이미지 라이브러리가 없어서이다. 이는 아래 설치로 해결할 수 있다.
>brew intall libjpeg
>pip3 install matplotlib
P.S : 위와같이 해도 잘 안된다면… 그냥 Anaconda환경 만들고 conda환경으로 하는게 속 편하다.. ㅎㅎ