- Install pyqt
- How to install PyQt5 on Windows?
- How to install PyQt5 on Mac OS X?
- How to install PyQt5 on Linux?
- Настраиваем окружение на Mac OS и собираем автономное приложение с PySide/PyQt
- Подготовка
- XCode
- MacPorts
- Python
- virtualenv
- PySide
- Настройка окружения
- Создаем виртуальное окружение
- py2app и проверка боем
- py2app
- vityafx / install script
- This comment has been minimized.
- s200999900 commented Mar 7, 2015
- This comment has been minimized.
- SimFre commented Mar 15, 2015
- This comment has been minimized.
- bigeyex commented Dec 14, 2015
- This comment has been minimized.
- frozenyeti789 commented Feb 22, 2016
- This comment has been minimized.
- ClayLewis commented Feb 24, 2016
- This comment has been minimized.
- wxyBUPT commented Mar 2, 2016
- This comment has been minimized.
- vityafx commented Apr 4, 2016
- This comment has been minimized.
- jonsavage commented May 7, 2016
- This comment has been minimized.
- SarchB commented Jan 25, 2017 •
- Как установить PyQt5 на Mac?
- 4 ответов
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:
Источник
Настраиваем окружение на Mac OS и собираем автономное приложение с PySide/PyQt
Сейчас все удобнее становится использовать HTML и JavaScript в интерфейсах приложений. И именно такая задача недавно появилась передо мной, с одним важным условием — на выходе должно быть полностью standalone приложение, не требующее установки дополнительных библиотек и способное запуститься в обычном пользовательском окружения.
В силу своего природного обаяния в качестве основного языка был выбран Python + PySide c WebKit на борту, для сборки app-бандла использовался py2app.
Проблемы появились, при первой же попытке запустить приложение на чистой системе — обнаружилось большое количество внешних зависимостей, которые py2app не смог самостоятельно разрешить. Под катом пошаговая инструкция как эта проблема была решена.
В попытках понять почему py2app не включает в бандл все необходимые библиотеки, в одной статье была найдена мысль, что создание полностью автономного приложения с встроенным в Mac OS интерпретатором невозможно и нужно пользовать MacPort. Так и поступим.
Подготовка
XCode
Несет в себе как средства разработки под Mac OS, так и нужный нам gcc.
Я использовал последнюю версию — 4.2, но и с более ранними (3.Х) проблем быть не должно.
Если еще нет, то брать с установочных дисков Mac OS или с сайта Apple (потребуется бесплатная регистрация)
MacPorts
Менеджер пакетов, который позволяет ставить на мак много полезных тулов и библиотек.
Устанавливается стандартным способом (pkg). Брать с MacPorts.org.
После установки можно на всякий случай обновить:
$ sudo port selfupdate
Python
Ставим из MacPorts:
$ sudo port install python27
Если используете другую версию питона, просто замените здесь и далее.
virtualenv
Тул, позволяющий создавать изолированные окружения для питона. Очень удобно, когда нужно иметь несколько версий питона или разные проекты требуют различных библиотек, упрощает дальнейший деплоймент. В нашем случае мы с помощью virtualenv создадим «автономную песочницу» из которой и появится standalone приложение.
$ sudo easy_install virtualenv
В нагрузку ставим virtualenvwrapper, который упрощает работу с окружением:
$ sudo easy_install virtualenvwrapper
PySide
Библиотека для Python, позволяющая использовать всю мощь и силу Qt из привычного языка программирования.
Пытался установить PySide сразу в виртуальное окружение через pip или easy_install (что было бы логичнее), но выяснилось, что PySide не поставляется в необходимом для этих менеджеров пакетов виде, в результате чего куча времени была убита на попытки скомпилировать библиотеку… остановился через пару дней, когда поймал себя за тем, что сидел и правил исходники какой-то сторонней либы =)
В результате идем путем установки предоставляемого разработчиками пекеджа.
Настройка окружения
Подготовительная часть на этом закончена, переходим непосредственно к созданию виртуального окружения и его наполнению.
Создаем виртуальное окружение
/.bash_profile добавляем
export WORKON_HOME=
/Envs
source /usr/local/bin/virtualenvwrapper.sh
/.bash_profile
$ mkdir -p $WORKON_HOME
$ mkvirtualenv —no-site-packages —python=/opt/local/bin/python2.7 py27
# —no-site-packages — говорит, что виртуальное окружение не будет использовать системные пекеджи
# —python=/opt/local/bin/python2.7 — какой интерпретор будет использоваться
# py27 — название окружения
После этого в $WORKON_HOME/py27 будет создана базовая структура каталогов и необходимые файлы. Кроме того окружение станет активным, в начале командной строки появится (py27). В дальнейшем, для активации нужно будет выполнить
$ workon py27
Можно вызвать питон, убедиться, что запустилась правильная версия.
(py27) $ python
Python 2.7.2 (default, Jul 21 2011, 01:27:20)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type «help», «copyright», «credits» or «license» for more information.
>>>
Теперь нужно перенести в новое окружение все библиотеки и модули:
# PySide packages
$ cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
$ mv PySide/
/Envs/py27/lib/python2.7/site-packages/
$ mv pysideuic/
# PySide libs
$ cd /usr/lib/
$ sudo mv libpyside-python2.7.*
# Необходимая для PySide библиотека
$ sudo mv libshiboken-python2.7.*
# Qt4 libs
$ cd /Library/Frameworks/
$ cp -pR Qt*
/Envs/py27/lib/
$ cp -pR phonon.framework
/Envs/py27/lib/ #Обратите внимание на отсутствие слеша после framework!
# Остатки Qt нам не нужны, удаляем
$ sudo /Developer/Tools/uninstall-qt.py
Так, почти все готово, осталась финальная полировка и проверка.
virtualenvwrapper кроме удобного способа создания и активации окружений предоставляет хуки на различные события — preactivate, postactivate, predeactivate, postdeactivate и прочие (полный список). Нас сейчас интересует postactivate, в который мы добавим переменные, которые будут говорить где искать в нашем окружении библиотеки и разные модули.
$ vi
/Envs/py27/bin/postactivate
# Добавляем туда
export DYLD_FRAMEWORK_PATH=
/Envs/py27/lib/
export DYLD_LIBRARY_PATH=
Быстрая проверка:
$ workon py27
(py27) $ python
Python 2.7.2 (default, Jul 21 2011, 01:27:20)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type «help», «copyright», «credits» or «license» for more information.
>>> import PySide
>>> PySide
>>>
Если вы все сделали правильно — то результат должен быть примерно таким. Если словили кучу ошибок, то… возможны варианты 🙂
py2app и проверка боем
Теперь все готово к написанию тестового приложения — qt_test.py:
#!/usr/bin/env python
import sys
from PySide.QtCore import *
from PySide.QtGui import *
from PySide.QtWebKit import *
web = QWebView()
web.load(QUrl(«http://www.pyside.org/»))
web.show()
Проверяем
$ workon py27
(py27) $ python qt_test.py
py2app
Пришла очередь py2app, который поможет собрать наше приложение в полноценный бандл. Кроме прочего разработчики virtualenv заботливо положили в наше виртуальное окружение еще один менеджер пакетов pip, с помощью которого мы и поставим py2app:
$ workon py27
(py27) $ pip install py2app
Для генерации бандла py2app использует специальный файл — setup.py. Как его создать с нуля хорошо рассказано в доке, а мы воспользуемся уже готовым:
В папочке dist появится app-бандл, который вы непременно можете запустить! )
Весь алгоритм проверялся на Mac OS X 10.6.8, а получившийся бандл тестировался на такой же, но чистой системе.
Источник
vityafx / install script
This snippet tested on Yosemite 10.10.1 |
1. Define your python3 directory (for example, «/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/») |
2. Download «http://download.qt-project.org/official_releases/qt/5.3/5.3.2/qt-opensource-mac-x64-clang-5.3.2.dmg» or any other new version of qt for mac and install it. |
3. Download SIP sources here: http://www.riverbankcomputing.com/software/sip/download |
4. Download PyQt5-gpl sources here: http://www.riverbankcomputing.com/software/pyqt/download5 |
5. Go to your downloads by terminal (for example, «cd |
/Downloads»)
/Qt5.3.2/5.3/clang_64/mkspecs/qdevice.pri
/Qt5.3.2/5.3.2/clang_64/bin/qmake
This comment has been minimized.
Copy link Quote reply
s200999900 commented Mar 7, 2015
This comment has been minimized.
Copy link Quote reply
SimFre commented Mar 15, 2015
Thanks for the guide! Python/PyQt is eating on my nerves by now and your guide has taken me a step further. I keep getting this when trying to setup PyQt:
«Error: Make sure you have a working sip on your PATH or use the —sip argument».
Command line: python3 configure.py —qmake
/Qt/5.4/clang_64/bin/qmake —destdir /usr/local//Cellar/python3/3.4.2_1/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages
The path is the same as given in the previous step. Any idea on how to work this out?
Edit:
Found the proper path when running make install for sip.
This worked: python3 configure.py —sip=/usr/local/Cellar/python3/3.4.2_1/Frameworks/Python.framework/Versions/3.4/bin/sip
This comment has been minimized.
Copy link Quote reply
bigeyex commented Dec 14, 2015
thanks very much!
there is one place that may need update. (Due to Qt version number change)
if anybody encounters error:
configure.py: error: ‘/Users/xxx/Qt5.3.2/5.3.2/clang_64/bin/qmake’ is not an executable
S/he should change it to
configure.py: error: ‘/Users/wangyu/Qt5.3.2/5.3/clang_64/bin/qmake’ is not an executable
or any path qmake actually lives.
This comment has been minimized.
Copy link Quote reply
frozenyeti789 commented Feb 22, 2016
ahhh crap! I somehow managed to download SIP files (through the different way). But i can’t install PyQt5 files. why, what is my problem?
This comment has been minimized.
Copy link Quote reply
ClayLewis commented Feb 24, 2016
What error’s are you getting, frozenyeti?
This comment has been minimized.
Copy link Quote reply
wxyBUPT commented Mar 2, 2016
thanks very much!
but I can’t understand the first step » 1. Define your python3 directory «,
what should I do for the first step?
This comment has been minimized.
Copy link Quote reply
vityafx commented Apr 4, 2016
@wxyBUPT you need just to find out where is site-packages directory of your python3 installation. If you have few, you must remember it somehow and use in the steps below, for example, create an environment variable $SP_PYTHON_DIR=. (your dir) . It is only needed for next steps (15 step).
This comment has been minimized.
Copy link Quote reply
jonsavage commented May 7, 2016
Thanks for the guide.
If installing on 10.10.4 make sure to change macosx10.8 to macosx10.10.11 on step 13
This comment has been minimized.
Copy link Quote reply
SarchB commented Jan 25, 2017 •
Ok, this worked for my macOS 10.12.2 / Qt 5.80 / PyQt5.7.1 / sip 4.19 / Python3.5 installation up until step 13.
/Qt5.3.2/5.3/clang_64/mkspecs/qdevice.pri however did not contain any !host reference and simply adding it myself did not help.
Then I found this post on Stack Overflow. It stated I should run:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
which worked like a charm all the way up to step 15.
During step 15 however, I received the error:
This is the GPL version of PyQt 5.7.1 (licensed under the GNU General Public
License) for Python 3.5.3 on darwin. Error: This version of PyQt5 and the commercial version of Qt have incompatible licenses.
I was able to fix that error by commenting out some lines in PyQt5 configure.py as instructed here.
Then, I continued and the command from step 15 executed without a problem.
However, now, when I run make (step 16) I am receiving this error:
Источник
Как установить PyQt5 на Mac?
Я пытаюсь установить PyQt5 на свой Mac, но я не знаю, как его хорошо использовать. Я попытался установить sip doing
что сработало, а потом я попробовал
который возвращает ошибку, которая говорит
убедитесь, что у вас есть рабочий sip на вашем пути или используйте аргумент —sip, чтобы явно указать рабочий sip.
Как исправить эту ошибку? Разве я не установил sip?
4 ответов
Я вроде как уклоняюсь от вопроса, но самый простой способ-установить доморощенного и просто запустить brew install pyqt или brew install pyqt5 .
между тем у меня есть окончательный способ установить PyQt5 на macOS. Не используйте доморощенного. Он отлично подходит для установки Qt5, но для PyQt5 лучший способ установить это с помощью
это работает очень быстро и использует универсальные колеса Python:
вы видите: такое колесо повторно используется для CPython 3.5, 3.6 и 3.7.
Примечание: PySide2 не так далеко, но мы построим подобные колеса, когда у нас будет первая версия готовый.
добавлено на 2017/09/25: вы можете, конечно, также использовать
но в то время мой pip/pip2/pip3 был немного беспорядочно связан, поэтому первое решение является твердым и избегает путаницы.
также правильно, что вы не всегда получаете последнюю версию PyQt5 таким образом. Но для того, чтобы начать работу, приоритет — получить результаты быстро, а не кровоточащий край.
сначала вам нужно установить SIP, который не просто работает configure.py :
затем вы можете установить PyQt5:
/.pip/pip.log Я обнаружил:
просто установлены newwer версии Python 3 с официального сайта и pip3 install PyQt5 наконец-то сработал.
Источник