[PyQt6] Install PyQt6 on Windows

2023. 1. 3. 15:03·Programming
728x90
728x90

주의 (2025.02)

현재 PySide6 의 경우 Windows 11 에서 conda를 통해 설치가 잘 된다 (designer.exe도 qt-main을 통해 지원).

꼭 PyQt6가 필요치 않고, PySide6로 대체가 가능하다면 다음 URL을 참고할 것.

https://ds31x.tistory.com/372

 

[PySide6] Installing PySide6 (and Designer) on Windows (with Conda)

기존에 conda 가상환경에 다시 pip로 설치를 했었는데,conda를 25.1.1 로 업데이트하고 PySide6와 designer를 설치하니 제대로 설치가 됨. Prerequisiteconda : conda-forge 채널에서 설치.os : Windows11, 23H2 (22631.4751)I

ds31x.tistory.com


주의 (2023.01)

아래 작성에서 설치한 pyqt6 6.0.1 버전의 경우, QMessageBox.StandardButton 이 없다는 에러 등이 뜬다.
QMessageBox.StandardButtons 로 바꾸면 되지만, 이런 문제가 한 두개가 아닐 수 있어서....

현재 위의 문제가 없는 pyqt6의 6.4이상 버전은 designer.exe를 제공하는 pyqt6-tools와 충돌이 난다.

 

실제로 pyqt6-tools에서 주로 사용하는 것은 designer 뿐인지라

  • 따로 pyqt와 pyqt6-tools를 각각의 정상동작 버전의 조합으로 두개의 가상환경을 만들어서 분리해서 설치하고,
    *.ui파일을 만든후 다시 pyqt6.4이상이  설치된 환경에서 작업하는 방법을 사용하던지,
  • pyside6를 pyqt6의 최신 버전과 함께 설치하여 
    pyside6가 제공하는 pyside6-designer로 *.ui파일을 만들고,
    pyqt6의 PyQt6.uic.pyuic로 해당 *.ui를 python파일로 바꾸는 방법

을 사용해야 한다.

 

일단 개인적으로 후자를 선택했다.

 

아래 글은 참고만 할 것. : pyqt6 는 2023.1 현재 6.4.x 버전 이상을 사용할 것을 권함.


대부분 wsl에서 처리를 하는데, windows에 직접 설치해야하는 경우가 발생.
간단히 처리될 거라고 생각했는데 버전에 따른 문제가 현재 있어서 조금 고생함.

 

과정

conda 가상환경 생성.

conda create -c conda-forge -n pyqt6 python=3.9 pip git
  • 2023.1 현재 python 3.10 이상에서는 pyqt6-tools가 동작하지 않으므로 3.9.x 대를 설치해야함.
  • conda가 아직 pyqt6를 지원하지 않으므로 pip로 설치해야 한다.
  • git은 본인 사정에 따라 안 설치해도 됨.

pyqt6 가상환경 activation

conda activate pyqt6

pip로 pyqt6, pyqt6-tools 설치.

pip install --upgrade pip
pip install pyqt6==6.0.1 pyqt6-tools
  • 혹시 몰라서 pip를 업그레이드함 (이 라인은 생략 가능)
  • 중요한 pyqt6를 6.0.1 로 버전을 지정해야한다. (6.0.2부터 dll 에러가 발생함.)

Etc

Qt Designer의 위치는 다음과 같음.

  • [MiniConda설치위치]/envs/pyqt6/Lib/site-packages/qt6_applications/Qt/bin
  • 윈도우에서는 slash 대신 backslash임.
  • dll 에러와 상관없이 다른 버전에서도 이건 잘 뜸. =.=;;

References

  • froum.qt.io : Plinio B의 마지막 언급을 참고할 것.
728x90

'Programming' 카테고리의 다른 글

[PyQt] Event and Event Handling 작동방식  (0) 2023.01.26
[Programming] Library vs. Framework  (0) 2023.01.18
[CE] Introduction of WSL (old)  (0) 2022.12.22
openCV : cv2.waitKey bug  (2) 2022.10.21
[NumPy] sorting: 정렬  (1) 2022.09.10
'Programming' 카테고리의 다른 글
  • [PyQt] Event and Event Handling 작동방식
  • [Programming] Library vs. Framework
  • [CE] Introduction of WSL (old)
  • openCV : cv2.waitKey bug
dsaint31x
dsaint31x
    반응형
    250x250
  • dsaint31x
    Dsaint31's blog
    dsaint31x
  • 전체
    오늘
    어제
    • 분류 전체보기 (787)
      • Private Life (15)
      • Programming (55)
        • DIP (116)
        • ML (35)
      • Computer (120)
        • CE (54)
        • ETC (33)
        • CUDA (3)
        • Blog, Markdown, Latex (4)
        • Linux (9)
      • ... (368)
        • Signals and Systems (115)
        • Math (176)
        • Linear Algebra (33)
        • Physics (43)
        • 인성세미나 (1)
      • 정리필요. (61)
        • 의료기기의 이해 (6)
        • PET, MRI and so on. (7)
        • PET Study 2009 (1)
        • 방사선 장해방호 (5)
        • 방사선 생물학 (3)
        • 방사선 계측 (9)
        • 기타 방사능관련 (3)
        • 고시 (9)
        • 정리 (18)
      • RI (0)
      • 원자력,방사능 관련법 (2)
  • 블로그 메뉴

    • Math
    • Programming
    • SS
    • DIP
  • 링크

    • Convex Optimization For All
  • 공지사항

    • Test
    • PET Study 2009
    • 기타 방사능관련.
  • 인기 글

  • 태그

    opencv
    Programming
    numpy
    linear algebra
    Term
    인허가제도
    math
    function
    SS
    fourier transform
    random
    Optimization
    Vector
    Python
    ML
    cv2
    signal_and_system
    Probability
    signals_and_systems
    SIGNAL
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dsaint31x
[PyQt6] Install PyQt6 on Windows
상단으로

티스토리툴바