본문 바로가기
코딩/Linux, Termux

termux에서 pip install이 잘 안될 때

by 나홀로코더 2021. 12. 14.
반응형

앞서 termux에서 파이썬을 사용하는 방법을 소개하였다.

 

termux를 이용해 스마트폰에서 파이썬과 주피터노트북 사용하기

스마트폰(태블릿)에서 Git 사용하기/termux, github)

 

안드로이드 전용 앱을 사용하는 방법(스마트폰에서 파이썬(Python) 코딩하는 방법/Pydroid 3, 태블릿, 안드로이드)에 비하면 광고 없이 조금 더 PC 환경과 비슷하게 사용할 수 있다는 장점이 있으나, 아무래도 termux가 linux와 완전히 같지는 않다 보니 불편함도 조금 있다.

 

그중 가장 불편한 것은 외부 라이브러리 설치가 원활히 안 되는 경우가 많다는 점이다.

 

광고가 싫어서 termux로 왔는데, 계속되는 에러들을 마주치고 이를 해결하려고 구글링을 하다 보면 솔직히 이 시간에 파이드로이드에서 광고를 보는 게 낫겠다는 생각이 들 때도 있다.

 

그러나 한두 번 쓰고 말 것이라면 몰라도 일단 한번 세팅을 하고 나면 termux를 사용하는 것이 더 편할 것이라 생각한다.

 

termux로 처음 진입해 여러 라이브러리들의 설치를 시도하고 있는 독자에게 아래 내용이 도움이 될 것이다.

 

1. building wheels에서 진행이 안 되는 경우

 

termux에서 pip install을 시도하면, 조금 진행이 되다가 building wheels 부분에서 더이상 진행이 안 되는 경우가 많다.

 

PC에서는 경험해보지 못한 정도로 오랫동안 기다려도 진행이 되지 않아 오류인가 싶을 것이다.

 

예를 들면 pandas를 설치하려 하면 매우 오래 걸린다.

 

그러나 오류 메시지와 함께 중단이 되는 것이 아니라 계속해서 한 단계에 멈춰만 있다면, 일단 기다려보자.

 

오류가 아니라 단지 시간만 오래 걸리는 것일 가능성이 크다.

 

 pandas를 설치하는데 1시간 30분을 기다렸다는 후기를 보고 일단 기다려보았는데, 필자는 약 10분을 기다리니 설치가 완료되었다.

 

반응형

 

2. 그밖의 오류 해결

 

위의 경우는 정상적으로 설치가 되니 큰 문제는 아니다.

 

아예 오류가 나면서 설치가 안 되는 경우에는, 일단 아래 페이지를 방문해보자.

 

https://wiki.termux.com/wiki/Python 

 

오류가 나는 경우는 대체로 해당 라이브러리를 설치하는 데에 필요한 dependency가 없는 것이 원인이다.

 

위 페이지의 설명에 따라 일단 아래 명령어를 입력하자.

 

pkg build-essential

 

그런 다음 현재 설치하려는 라이브러리가 위 페이지의 중간쯤에 있는 표에 있는지 보자.

 

만일 있다면, 해당 표에 있는 dependencies를 pkg 명령어로 먼저 설치하고, 다시 pip install을 시도해보자.

 

아마 오류가 거의 해결될 것이다.

 

필자의 경우 lxml, pandas, pillow를 시도해보았고, 모두 문제없이 설치가 되었다.

 

pillow의 경우 special instructions 부분도 봐야 하는데, 아래와 같이 입력하라는 뜻이다.

 

LDFLAGS=-L/system/lib64 pip install Pillow
[참고]
pillow의 경우 오류가 잦은 듯하다. 관련 깃허브 이슈 페이지를 첨부한다.
https://github.com/python-pillow/Pillow/issues/5809
https://github.com/python-pillow/Pillow/issues/1957

 

반응형

 

3. matplotlib의 경우

 

2021년 12월 현재 matplotlib은 위의 설명대로 해도 설치가 잘 안 되고 있다.

 

이에 대해서는 해결법을 찾는 대로 포스팅할 계획인데, 다른 시각화 라이브러리인 plotly는 pip install로 문제 없이 설치가 되니, plotly를 사용해볼 것을 추천한다.

 

plotly는 matplotlib이나 seaborn에 비해 신생 라이브러리인데, 현재도 활발하게 업데이트가 진행되고 있으며, 아래와 같이 디자인도 예쁘고, 그래프 확대, 축소도 되고, 마우스를 올리면 수치도 보여주는 등 좀 더 스마트한 라이브러리이다.

 

plotly 예시

 

 

 

반응형

댓글