상세 컨텐츠

본문 제목

[Mac OS] Python GUI 프레임워크/라이브러리 - PyQt5 설치 시 정지 (Hang) 현상 해결

IT 이야기/IT 상식

by 리치윈드 - windFlex 2023. 2. 15. 15:19

본문

반응형

Python GUI Framework - TKinter, PyQt, PySide, Kivy

Mac OS 환경 Python GUI

 

일반적으로 Python 환경에서 Gui 환경을 구축하는 것은 별다른 작업을 요구하지 않는다.

대표적인 Python GUI 라이브러인 TKinter는 Python 내장 라이브러리 이므로, pip install을 통해서 한번에 환경을 구축할 수 있다.

 

[ Python 주요 GUI 라이브러리 ]

  • TKinter - 참조 : https://076923.github.io/posts/Python-tkinter-1/
    • (장점) 무지 쉽다. 빠르게 UI를 구성할 수 있다. 따로 설치할것이 별로 없다.
    • (단점) 단순하다. UI가 복잡해지면 Layout이 어렵다.
  • PyQt4, PyQt5, 최근 PyQt6 - 참조 : https://wikidocs.net/35478
    (TKinter는 복잡한 GUI를 구성하기에는 번거롭다. UI 자체도 예쁘지는 않다. ==> 좀 더 UI 편의성을 개선한 라이브러리 이다)
    • (장점) 상대적으로 고급 UI 개발이 가능하다.
    • (단점) 추가 설치가 필요하고, 본격적으로 UI 개발이다.
  • PySide - 참조 : https://pypi.org/project/PySide/       
    (PyQt는 상용 (Commercial) 사용 불가하기 때문에 대안으로 개발)
    • (장점) 개인/업무/상용으로 모두 사용할 수 있다. 
    • (단점) PyQt와 유사하지만, 다르다. PyQt 대비 자료가 부족하다.
  • Kivy - 참조 : https://kivy.org/      
    (파이썬으로 모바일 앱을 만들어보려는 시도에서 GUI 프레임워크로 발전)
    • (장점) Python으로 모바일 개발할 수 있는 유일한 프레임워크 이다. 
    • (단점) 결과물의 품질을 높이기가 어렵다. 굳이 Python으로 해야하는 생각이 든다. 아직 마이너하다.
      Flutter/ReactNative가 CrossPlatform을 지원해주는 시기에 굳이 이렇게 해야하나 하는 생각 ^^;;;

 

기본적인 GUI 환경인, TKinter의 부족한 측면에 대응하여 좀 더 다양한 GUI 환경 구축을 원한다면, PyQt5를 고려해 볼 수 있을 것이다. PyQt 또한 대중적으로 많이 사용하는 라이브러리인 만큼 그에 대한 자료는 매우 많으며, 지속적으로 보완 되어 왔다. 이 덕분에 오늘날의 python3 환경에서 PyQt 사용을 위해서는 `pip install PyQt5` 한줄 입력이면 환경이 완료되는 것이 일반적이다. 

 

[설치 에러] Mac OS 환경 PyQt5 설치 - Hang 해결

 

그런데, pyqt5의 라이선스는 상용 (commertial) 사용은 유료 이다.  이 때문에, 설치 시점에 license에 대한 서명을 해야하는 것 같다. 

pip3 install pyqt5 --config-settings --confirm-license= --verbose
우선, pip install 중에 무엇을 하고 있는지 상세하게 살펴보자. --> `--verbose`
환경 설정 할 수 있도록 해주자 --> `--config-settings`
라이선스 서명에 동의 해 주자. --> `confirm-license=`

 

반응형

관련글 더보기

댓글 영역