- Install pyqt
- How to install PyQt5 on Windows?
- How to install PyQt5 on Mac OS X?
- How to install PyQt5 on Linux?
- Создаём окружение для PyQt5 в Linux MInt (Ubuntu)
- Пути установки
- Настройка окружения
- Создание приложения
- Упаковка в исполняемый файл для Linux
- Упаковка в исполняемый файл для Windows
- Создаём окружение для PyQt5 в Linux MInt (Ubuntu)
- Пути установки
- Настройка окружения
- Создание приложения
- Упаковка в исполняемый файл для Linux
- Упаковка в исполняемый файл для Windows
- ujjwal96 / Install PyQt5 on Ubuntu with python3 .md
- This comment has been minimized.
- umbe1987 commented Aug 9, 2018
- This comment has been minimized.
- ravi97garg commented Sep 4, 2018
- This comment has been minimized.
- ChrisVilches commented Sep 16, 2018
- This comment has been minimized.
- ujjwal96 commented Oct 2, 2018
- This comment has been minimized.
- mraehanakbar commented Mar 1, 2019
- This comment has been minimized.
- CyberSinister commented May 8, 2019
- This comment has been minimized.
- FangliangBai commented Jun 3, 2019
- This comment has been minimized.
- MrFlava commented Jul 18, 2019
- This comment has been minimized.
- madhuniha commented Jul 18, 2019
- This comment has been minimized.
- ujjwal96 commented Jul 18, 2019
- This comment has been minimized.
- ujjwal96 commented Jul 18, 2019
- This comment has been minimized.
- MrFlava commented Jul 18, 2019
- This comment has been minimized.
- Sokom141 commented Sep 26, 2019
- This comment has been minimized.
- Ahsanrao237 commented Dec 8, 2019
- This comment has been minimized.
- aanastasiou commented Jan 8, 2020
- This comment has been minimized.
- mohamadjalali commented Jan 17, 2020 •
- This comment has been minimized.
- carlos-antonio-dias commented Feb 5, 2020
- This comment has been minimized.
- sahilparekh commented Feb 16, 2020
- This comment has been minimized.
- wrishel commented Feb 26, 2020
Install pyqt
PyQt is often not installed by default. The PyQt module can be used to create desktop applications with Python. In this article you’ll learn how to install the PyQt module.
Desktop applications made with PyQt are cross platform, they will work on Microsoft Windows, Apple Mac OS X and Linux computers (including Raspberry Pi).
How to install PyQt5 on Windows?
To install PyQt on Windows there are a few steps you need to take.
First use the installer from the qt-project website, from qt to install PyQt.
Next you want to install a Python version 3.3 or newer. Check the box to add all of the PyQt5 extras. It’s not necessary to compile everything from source, you can install all the required packages with the installer.
On Python >= 3.6, you can also try this command:
It should work without problems.
How to install PyQt5 on Mac OS X?
On Apple Mac OS X installation is a bit simpler. The first step to take is to install the Mac OS X binary. This installs the PyQt GUI library.
But to use it from Python, you also need Python module. This is where the tool brew comes in.
You can use brew to install pyqt (in the terminal):
How to install PyQt5 on Linux?
Python is often installed by default on Linux (in nearly all of the distributions including Ubuntu). But you want to make sure to use Python 3, because of all the features and ease of use. You can verify that you have the newest Python version with the command:
On Ubuntu Linux they sometimes include two versions of python, python3 and python . In that case use Python 3.
Once you have Python ready, the next step is to install PyQt.
This isn’t hard to do if you have some Linux experience. You can install PyQt your software package manager. Which package manager to use depends on which Linux distribution you are using.
On Ubuntu Linux / Debian Linux you can use the command:
Источник
Создаём окружение для PyQt5 в Linux MInt (Ubuntu)
Давно уже до пятой версии обновился Qt и вместе с ним PyQt, но найти информацию по ним в русскоязычном сегменте — задача не из простых. Под катом подробный туториал для тех, кто только начинает знакомиться со связкой Qt + python3.
Цель: собрать и настроить окружение, пройти путь от установки PyQt5 и создания формы в Qt Designer до запуска переносимого бинарника под Windows (да, всё верно, разрабатываем под Mint, собираем для linux и windows).
Пути установки
/dev/
Мы будем использовать виртуальные окружения для питона, и хранить их будем в директории envs, т.е.
/dev/envs/
Наши проекты будут храниться в директории src, т.е.
/dev/src/
Если у вас уже сложилась собственная иерархия размещения файлов, то придётся скорректировать пути в командах, приведённых ниже.
Настройка окружения
Создаём структуру директорий. Откройте консоль и выполните:
Ставим пакет, который потребуется нам для сборки в будущем:
Ставим pip и virtualenv:
Создаём виртуальное окружение, активируем его и обновляем пакеты:
Ставим Qt5. При выборе пути установки я оставил «по-умолчанию»
/Qt. Если Вы выберите другой, то необходимо менять пути в командах ниже:
Ставим SIP — модуль, необходимый для работы PyQt:
На этом всё. Окружение установлено и готово к работе. Для проверки выполните команду:
Ответ должен выглядеть следующим образом:
Для проверки, что всё действительно установилось в виртуальное окружение, откройте новое окно терминала и повторите команду проверки:
В ответ должна появиться ошибка ImportError. Новое окно терминала после этого можно закрыть.
Создание приложения
Перейдём в директорию с нашими исходниками и создадим директорию проекта:
Далее нам потребуется Qt Designer. Если Вы не меняли пусть установки Qt, то запустить его можно командой:
Вот так выглядит запущенный Qt Designer на моей системе:
В данном руководстве я не буду подробно останавливаться на описании интерфейса дизайнера, мы пройдём простейший путь до минимальной готовой формы. Если Вам необходима более подробная информация — Google It!
В диалоговом окне выбираем «Widget» (последний пункт в списке «templates/forms») и нажимаем кнопку «Создать». Откроется форма редактирования виджета:
Перетащите на форму кнопку из меню слева и сохраните полученную форму с именем test.ui в директорию
/dev/src/pyqt_test/:
Tips&Tricks: Нажав [Crtl + R] Вы можете запустить свою форму и «потрогать» её в режиме реального времени.
Конвертируем файл интерфейса из XML формы в понятную python форму:
Я не хочу редактировать что-либо в файле, созданном конвертером PyQt, поэтому наши слоты мы опишем в отдельном файле. Создайте файл test_slots.py и откройте его в любимом Вами редакторе. Наполнение файла должно выглядеть примерно так:
Затем, создайте ещё один файл с именем main.py, в котором мы опишем основную логику:
На этом наше приложение завершено. Выполнив из консоли
мы должны увидеть форму с кнопкой посередине, нажатие на которую меняет название кнопки на системную дату.
Упаковка в исполняемый файл для Linux
Упаковщик потребует некоторой магии при установке.
Скачиваем пакет, не устанавливая его и распаковываем:
Открываем любимым редактором файл cx_Freeze-4.3.4/setup.py. Я использую SublimeText:
Правим строку №84, чтобы она выглядела, как на картинке:
Tips&Tricks: А вы знали, что если запустить SublimeText из виртуального окружения, то интерпретатором по-умолчанию будет из виртуального окружения?
Сохраняем изменения, закрываем редактор, устанавливаем пакет, возвращаемся в папку с исходниками, запускаем упаковку:
После этого в директории с исходниками появится директория dist, в которой среди множества файлов можно заметить файл без расширения main — это и есть наш бинарник, готовый для запуска и переноски. Откровенно говоря, немного расстраивает размер дистрибьютива: на моей машине это — 70,1 Мб, но не стоит забывать, что туда упакованы: python, PyQt, Qt и некоторые общесистемные библиотеки. Сборочный скрипт cxfreeze достаточно гибко конфигурируется, но подбор оптимальных параметров я оставлю на совести читателя. Скажу только, что счастье кроется в сжатии, оптимизации и ручном ограничении зависимостей.
Упаковка в исполняемый файл для Windows
К сожалению, чуда не будет. Мне не известен способ собрать exe напрямую из-под Linux-системы. Поэтому, придётся потанцевать с wine.
Закрываем открытый в самом начале терминал:
Открываем новый, ставим последнюю версию wine:
После этого скачиваем windows-версии уже знакомых нам пакетов и запускаем установку из-под wine:
А дальше немного магии. Идём по ссылке:
Качаем актуальную версию cx_Freeze для нашего интерпретатора и ставим поверх официальной:
После этого остаётся проверить работоспособность. Переходим в каталог с исходником, открываем терминал wine, выполняем уже знакомую команду сборки:
Оказалось, что у меня в распоряжении нет windows-машины, поэтому смог протестировать результат только под wine. Выходим из терминала wine (команда exit), закрываем терминал. Идём раздавать нашу программу всем желающим.
Источник
Создаём окружение для PyQt5 в Linux MInt (Ubuntu)
Давно уже до пятой версии обновился Qt и вместе с ним PyQt, но найти информацию по ним в русскоязычном сегменте — задача не из простых. Под катом подробный туториал для тех, кто только начинает знакомиться со связкой Qt + python3.
Цель: собрать и настроить окружение, пройти путь от установки PyQt5 и создания формы в Qt Designer до запуска переносимого бинарника под Windows (да, всё верно, разрабатываем под Mint, собираем для linux и windows).
Пути установки
/dev/
Мы будем использовать виртуальные окружения для питона, и хранить их будем в директории envs, т.е.
/dev/envs/
Наши проекты будут храниться в директории src, т.е.
/dev/src/
Если у вас уже сложилась собственная иерархия размещения файлов, то придётся скорректировать пути в командах, приведённых ниже.
Настройка окружения
Создаём структуру директорий. Откройте консоль и выполните:
Ставим пакет, который потребуется нам для сборки в будущем:
Ставим pip и virtualenv:
Создаём виртуальное окружение, активируем его и обновляем пакеты:
Ставим Qt5. При выборе пути установки я оставил «по-умолчанию»
/Qt. Если Вы выберите другой, то необходимо менять пути в командах ниже:
Ставим SIP — модуль, необходимый для работы PyQt:
На этом всё. Окружение установлено и готово к работе. Для проверки выполните команду:
Ответ должен выглядеть следующим образом:
Для проверки, что всё действительно установилось в виртуальное окружение, откройте новое окно терминала и повторите команду проверки:
В ответ должна появиться ошибка ImportError. Новое окно терминала после этого можно закрыть.
Создание приложения
Перейдём в директорию с нашими исходниками и создадим директорию проекта:
Далее нам потребуется Qt Designer. Если Вы не меняли пусть установки Qt, то запустить его можно командой:
Вот так выглядит запущенный Qt Designer на моей системе:
В данном руководстве я не буду подробно останавливаться на описании интерфейса дизайнера, мы пройдём простейший путь до минимальной готовой формы. Если Вам необходима более подробная информация — Google It!
В диалоговом окне выбираем «Widget» (последний пункт в списке «templates/forms») и нажимаем кнопку «Создать». Откроется форма редактирования виджета:
Перетащите на форму кнопку из меню слева и сохраните полученную форму с именем test.ui в директорию
/dev/src/pyqt_test/:
Tips&Tricks: Нажав [Crtl + R] Вы можете запустить свою форму и «потрогать» её в режиме реального времени.
Конвертируем файл интерфейса из XML формы в понятную python форму:
Я не хочу редактировать что-либо в файле, созданном конвертером PyQt, поэтому наши слоты мы опишем в отдельном файле. Создайте файл test_slots.py и откройте его в любимом Вами редакторе. Наполнение файла должно выглядеть примерно так:
Затем, создайте ещё один файл с именем main.py, в котором мы опишем основную логику:
На этом наше приложение завершено. Выполнив из консоли
мы должны увидеть форму с кнопкой посередине, нажатие на которую меняет название кнопки на системную дату.
Упаковка в исполняемый файл для Linux
Упаковщик потребует некоторой магии при установке.
Скачиваем пакет, не устанавливая его и распаковываем:
Открываем любимым редактором файл cx_Freeze-4.3.4/setup.py. Я использую SublimeText:
Правим строку №84, чтобы она выглядела, как на картинке:
Tips&Tricks: А вы знали, что если запустить SublimeText из виртуального окружения, то интерпретатором по-умолчанию будет из виртуального окружения?
Сохраняем изменения, закрываем редактор, устанавливаем пакет, возвращаемся в папку с исходниками, запускаем упаковку:
После этого в директории с исходниками появится директория dist, в которой среди множества файлов можно заметить файл без расширения main — это и есть наш бинарник, готовый для запуска и переноски. Откровенно говоря, немного расстраивает размер дистрибьютива: на моей машине это — 70,1 Мб, но не стоит забывать, что туда упакованы: python, PyQt, Qt и некоторые общесистемные библиотеки. Сборочный скрипт cxfreeze достаточно гибко конфигурируется, но подбор оптимальных параметров я оставлю на совести читателя. Скажу только, что счастье кроется в сжатии, оптимизации и ручном ограничении зависимостей.
Упаковка в исполняемый файл для Windows
К сожалению, чуда не будет. Мне не известен способ собрать exe напрямую из-под Linux-системы. Поэтому, придётся потанцевать с wine.
Закрываем открытый в самом начале терминал:
Открываем новый, ставим последнюю версию wine:
После этого скачиваем windows-версии уже знакомых нам пакетов и запускаем установку из-под wine:
А дальше немного магии. Идём по ссылке:
Качаем актуальную версию cx_Freeze для нашего интерпретатора и ставим поверх официальной:
После этого остаётся проверить работоспособность. Переходим в каталог с исходником, открываем терминал wine, выполняем уже знакомую команду сборки:
Оказалось, что у меня в распоряжении нет windows-машины, поэтому смог протестировать результат только под wine. Выходим из терминала wine (команда exit), закрываем терминал. Идём раздавать нашу программу всем желающим.
Источник
ujjwal96 / Install PyQt5 on Ubuntu with python3 .md
Configuring to run from terminal
$ qtchooser -run-tool=designer -qt=5
OR
Write the following in /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf
Create uic.py file.
Create a symlink:
$ sudo ln uic.py «/usr/lib/x86_64-linux-gnu/qt5/bin/uic»
/.local/share/application with .desktop extension
This comment has been minimized.
Copy link Quote reply
umbe1987 commented Aug 9, 2018
This helped me a lot setting the right qtdesigner! Thanks for sharing this gist! Kind regards, Umberto
This comment has been minimized.
Copy link Quote reply
ravi97garg commented Sep 4, 2018
Unable to launch /usr/lib/qt5/bin/uic.
This comment has been minimized.
Copy link Quote reply
ChrisVilches commented Sep 16, 2018
I’m using Linux Mint and the first command pip3 install —user pyqt5 told me I need the SIP software/library. So I downloaded it from this page: http://pyqt.sourceforge.net/Docs/sip4/installation.html
By following the steps, I achieved the make step, and it also threw an error telling me Python.h wasn’t available, so I had to install sudo apt-get install python3-dev . Then ran make again and worked. Then the pip3 install —user pyqt5 command worked.
This comment has been minimized.
Copy link Quote reply
ujjwal96 commented Oct 2, 2018
@ravi97garg here write
sudo ln uic.py «/usr/lib/qt5/bin/uic»
This comment has been minimized.
Copy link Quote reply
mraehanakbar commented Mar 1, 2019
This comment has been minimized.
Copy link Quote reply
CyberSinister commented May 8, 2019
How do I add PyQt5 to Qt Creator? I’m lost. I’ve spent 4 hours on this and now I’ve given up. Any help?
This comment has been minimized.
Copy link Quote reply
FangliangBai commented Jun 3, 2019
How do I add PyQt5 to Qt Creator? I’m lost. I’ve spent 4 hours on this and now I’ve given up. Any help?
What do you mean by adding PyQt5 to Qt Creator?
They work separately.
Usually, You can use Qt Creator (or Qt Designer) to draw the UI and generate .ui file, e.g. window.ui . Then you use PyQt5 to convert the window.ui file to a window.py file. Then you should write your code based on the window.py and don’t need window.ui anymore, unless you modified it (you should redo the conversion).
This comment has been minimized.
Copy link Quote reply
MrFlava commented Jul 18, 2019
Help me! How to fix this problem?
This comment has been minimized.
Copy link Quote reply
madhuniha commented Jul 18, 2019
when i run qtchooser -run-tool=designer -qt=5
i get
QXcbConnection: Could not connect to display
Aborted (core dumped)
What must have gone wrong? I created a new virtual environment and followed your steps.
This comment has been minimized.
Copy link Quote reply
ujjwal96 commented Jul 18, 2019
@MrFlava Looks like you either you don’t have python3 in /usr/bin or there’s some error in your uic.py file
This comment has been minimized.
Copy link Quote reply
ujjwal96 commented Jul 18, 2019
@madhuniha This seems like a bug. Try running
$ xvfb-run — qtchooser -run-tool=designer -qt=5
This comment has been minimized.
Copy link Quote reply
MrFlava commented Jul 18, 2019
@ujjwal96 you mean this?
This comment has been minimized.
Copy link Quote reply
Sokom141 commented Sep 26, 2019
Thank you so much! This worked, as opposed to other methods.
This comment has been minimized.
Copy link Quote reply
Ahsanrao237 commented Dec 8, 2019
Q: how to convert .ui file into .py file?
Ans: Open terminal in the folder where your ui file present, then write this command.
pyuic -x [FILENAME].ui -o [FILENAME].py
This comment has been minimized.
Copy link Quote reply
aanastasiou commented Jan 8, 2020
So, from the point of view of running python within a virtual environment, it is very likely that all steps to get pyqt5 will work, except the bit that used to bring qt-designer in. If the system has Qt5 installed, it seems to have all the libraries required for it installed too and even if you don’t have pyqt5 installed on the base system, the qtchooser way of launching qtdesigner from above will work.
Therefore, a key component here is qtchooser.
The compiler will become available immediately within the virtualenv once you install pyqt5 there.
It would be great if the settings to launch the designer (in terms of setting up environment variables) where applied by one of the pip packages :/
This comment has been minimized.
Copy link Quote reply
mohamadjalali commented Jan 17, 2020 •
Which path do I choose to save the uic.py file.
After creating the uic.py file by entering this command
$ sudo ln uic.py «/usr/lib/x86_64-linux-gnu/qt5/bin/uic»
I have the following error .
ln: failed to create hard link ‘/usr/lib/x86_64-linux-gnu/qt5/bin/uic’: File exists
This comment has been minimized.
Copy link Quote reply
carlos-antonio-dias commented Feb 5, 2020
Hi everyone I got stuck right at the first command(pip3 install —user pyqt5) which show there error:
Command «python setup.py egg_info» failed with error code 1 in /tmp/pip-build-cvndyrvb/pyqt5/
I went through:
facebook/prophet#418
https://superuser.com/questions/241865/updating-python-on-ubuntu-system
And none of it helped. Any ideas?
This comment has been minimized.
Copy link Quote reply
sahilparekh commented Feb 16, 2020
Hi everyone I got stuck right at the first command(pip3 install —user pyqt5) which show there error:
Command «python setup.py egg_info» failed with error code 1 in /tmp/pip-build-cvndyrvb/pyqt5/
I went through:
facebook/prophet#418
https://superuser.com/questions/241865/updating-python-on-ubuntu-system
And none of it helped. Any ideas?
use pip3 install —user pyqt5==5.14
This comment has been minimized.
Copy link Quote reply
wrishel commented Feb 26, 2020
Top-notch tutorial in that it works without a lot of knowledge about Ubuntu! I think it’s possible that the Desktop Entry section is no longer needed. If you decide to keep it, it needs a minor update.
When I have finished the tutorial and Show Application in Ubu 18, I see two for designer. One has a generic icon and the other has an icon specific to Qt.
The .desktop file with is in /usr/share/applications/designer-qt5.desktop with a modification date in 2018 so I suppose it was installed along with Qt. The .desktop file for the the item with the generic logo is in the one I created following the tutorial.
- if the desktop files are installed with QT do we really need the Desktop Entry section in the tutorial?
- if you do keep that section I suggest changing «Icon=designer» to «Icon=designer-qt» since this creates the desktop entry with Qt’s icon.
Источник