- Работа с разными версиями python3 в AstraLinux CommonEdition
- 2 ответа 2
- Установка QT
- Fd1501h
- Yuriy46
- Yuriy46
- Montfer
- AndreyK
- AndreyK
- Montfer
- AndreyK
- cogniter
- Aleksey1508
- AndreyK
- Install PyQt5 on Ubuntu Linux Install PyQt5 on Ubuntu and other Debian-based Linux distributions
- Install PyQt5 with pip
- Install PyQt5 via apt
Работа с разными версиями python3 в AstraLinux CommonEdition
В AstraLinux изначально установлен python3.5. Версию 3.7 установил с помощью менеджера пакетов Synaptic. Имеется простой код на языке python с библиотекой PyQt5:
from PyQt5 import QtWidgets import sys app = QtWidgets.QApplication(sys.argv) window = QtWidgets.QWidget() window.show() sys.exit(app.exec_())
Если запустить файл с исходным кодом так: python3.5 test.py — всё работает. Если же я запускаю python3.7 test.py — в консоли выводится такая надпись: ImportError: cannot import name ‘QtWidgets’ from ‘PyQt5’ (/usr/lib/python3/dist-packages/PyQt5/init.py) Как сделать так, чтобы версия python3.7 смогла увидеть установленные пакеты и библиотеки? Пробовал работу с командой update-alternatives, назначал приоритеты, но проблему это не решило.
Самый простой вариант, ИМХО, — сделайте себе venv в python 3.7, установите в него все необходимые пакеты и работайте в созданном venv.
Во время создания виртуального окружения python3.7 -m venv venv сообщение: The virtual environment was not created successfully because ensurepip is not available. On Debian/Ubuntu systems, you need to install the python3-venv package using the following command. apt-get install python3-venv You may need to use sudo with that command. After installing the python3-venv package, recreate your virtual environment. Failing command: [‘/home/adminus/Документы/venv/bin/python3.7’, ‘-Im’, ‘ensurepip’, ‘—upgrade’, ‘—default-pip’]
Если вы установили более новый пайтон из пакетов, то соответствующий venv , скорее всего, называется python3.7-venv
проверил этот вариант: Уже установлен пакет python3.7-venv самой новой версии (3.7.3-2+deb10u3+ci202107011746+astra2).
2 ответа 2
Проблему с созданием окружения для Python3.7 в AstraLinux решил созданием окружения без модуля pip , но доступом к системным пакетам,
где pip есть:
python3.7 –m venv —without-pip —system-site-packages
Установка модулей из активированного окружения:
python3 –m pip install
Если вы установили более новый пайтон из пакетов, то соответствующий venv , скорее всего, называется python3.7-venv
С развёртыванием виртуального окружения есть одна тонкость. venv делает копию установки python , собранной саппортерами из дистрибутива. Но они всегда на несколько поколений позади актуальных версий. Поэтому перед практическим использованием venv необходимо обновить системные пакеты.
Я покажу на примере python-3.8 , который стоит у меня в Ubuntu, но у вас последовательность шагов будет точно такой же.
- Создать виртуальное окружение: $ /usr/bin/python-3.8 -m venv ~/tmp/venv-3.8
- Активировать это окружение в текущем сеансе bash : $ source ~/tmp/venv-3.8/bin/activate По этой команде в текущем сеансе будут прописаны переменные окружения, указывающие на бинарники, библиотеки и пакеты в каталоге ~/tmp/venv-3.8/
- Для проверки: (venv-3.8) $ which python3 -> /home/user/tmp/venv-3.8/bin/python3 Обратите внимание, что activate изменил строку приглашения в bash , добавив в неё указание, что в текущем сеансе активно виртуальное окружение.
- Первым делом нужно обновить pip и setuptools : (venv-3.8) $ pip3 install pip setuptools —upgrade Не знаю, как у вас в Астре, а у меня в Убунте в пакетах идёт совершенно допотопный pip версии 9. Текущий pip версии 21.2. setuptools апгрейдятся с версии 39 до 58.
- Теперь можно устанавливать pyqt5 и все остальные пакеты, необходимые вам. Устанавливать через pip ! не через пакеты дистрибутива: (venv-3.8) $ pip3 install pyqt5
- После установки всех пакетов запускаете ваш скрипт в активированном окружении: (venv-3.8) $ python3 test.py
- Если вам нужно отменить изменения переменных окружения, внесённые скриптом activate , выполните команду (venv-3.8) $ deactivate и все исходные настройки вернутся.
Для 3.6 вы можете создать такое же окружение в отдельной папке, и выполнять test.py , активировав его. Так вы полностью разделите пакеты между версиями пайтона.
Пустое виртуальное окружение весит меньше 10 Мб, но, разумеется, по мере установки пакетов, будет раздуваться. Например, у меня установлены numpy , scipy , pandas , matplotlib , tensorflow , jupyter — размер venv почти 1.8 гб.
Установка QT
как установить qt creator c библиотеками qt
Во время установки с помощью файла qt-unified-linux-x64-3.0.5-online.run появляется ошибка:
Warning: Network error: [ QNetworkReply::NetworkError(SslHandshakeFailedError) ] »
Failed to connect to server. Check your network connection and try again.»
Fd1501h
Moderator
как установить qt creator c библиотеками qt
Во время установки с помощью файла qt-unified-linux-x64-3.0.5-online.run появляется ошибка:
Warning: Network error: [ QNetworkReply::NetworkError(SslHandshakeFailedError) ] »
Failed to connect to server. Check your network connection and try again.»
Yuriy46
New member
тоже самое, нужно установить другую версию Qt,
инсталляторы Qt в SE 1.6 (smolensk) не работают, в CE 2.12.7 (orel) всё нормально.
подскажите, что может быть?
Yuriy46
New member
Montfer
New member
у меня не работал Qt пока не поставил qt5-default
https://forum.astralinux.ru/threads/581/
Ставил на Орла из репозитория астры. Возможно и в спец. версии при установке с диска из-за этого же не работает
AndreyK
New member
Поставил qt5-default, поставил qtcreator (с диска devel, не из сторонних репо)
andreyk@astra-se:~$ qtcreator
QFactoryLoader::QFactoryLoader() checking directory path «/usr/bin/platforms» .
qt.qpa.plugin: Could not find the Qt platform plugin «xcb» in «»
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Каталога /usr/bin/platforms в системе нет
andreyk@astra-se:~$ sudo cat /sys/digsig/elf_mode && cat /etc/astra_version && uname -a
1
SE 1.6 (smolensk)
Linux astra-se 4.15.3-1-generic #astra13 SMP Wed Jul 25 16:37:04 UTC 2018 x86_64 GNU/Linux
AndreyK
New member
Поддержка предложила следующую процедуру:
После установки ОС, необходимо:
Вставить диск со средствами разработки
Выполнить команды:
sudo apt-cdrom add
sudo apt update
sudo apt install qt5-default
sudo apt install qtcreator
Потребуется заменить диск на установочный, после этого снова на диск со средствами разработки.
Montfer
New member
Поддержка предложила следующую процедуру:
После установки ОС, необходимо:
Вставить диск со средствами разработки
Выполнить команды:
sudo apt-cdrom add
sudo apt update
sudo apt install qt5-default
sudo apt install qtcreator
Потребуется заменить диск на установочный, после этого снова на диск со средствами разработки.
AndreyK
New member
Конкретно эту процедуру не проверял.
До ответа поддержки я попытался установить qtcreator на чистую ОС.
Конкретно:
sudo apt install qt5-default
sudo apt install qtcreator
Процесс завершился с кучей ошибок на зависимости, однако после я выполнил apt —fix-broken install
и qtcreator удалось запустить.
Поддержка уверяет что процедура выше на тестовом стенде отработала без ошибок.
Будет время — проверю.
cogniter
Moderator
Aleksey1508
New member
Не подскажите как установить qt creator 5 на astra linux special edition Смоленск 1.5 ?
Это бесплатно, или нужен диск «Инструменты разработчика» ?
Или легче установить на astra linux common edition Орел 2.12 ?
AndreyK
New member
sudo apt install qt5-default
sudo apt install qtcreator
Если ставите Qt на систему SE с обновлениями, то нужно скачать и диск обновлений разработки. На SE имеет смысл собирать то, то будет работать в последствии на SE, но разрабытавать по моему мнению нужно на Орле или на другой системе (я использую Ubuntu). Надо учитывать, что в Qt, который сходит в состав SE, нет некоторых расширений, например QChart, видимо дело в лицензионной политике Qt
Если ставить на Орле, то имхо проще скачать стандартный Qt с qt.io, но надо обратить внимание на то, с какой лицензией поставляются те или иные компоненты Qt, хотя если разрабатываете для внутреннего использования, то можно использовать все.
Про бесплатно или платно ничего не скажу.
Install PyQt5 on Ubuntu Linux
Install PyQt5 on Ubuntu and other Debian-based Linux distributions
Before you start the PyQt5 tutorial you will need to have a working installation of PyQt5 on your system. If you don’t have either set up yet, the following steps will guide you through how to do this on Linux.
This guide is also available for macOS and Windows.
Note that the following instructions are only for installation of the GPL licensed version of PyQt. If you need to use PyQt in a non-GPL project you will need to purchase an alternative license from Riverbank Computing to release your software.
Install PyQt5 with pip
The simplest way to install PyQt5 on Linux is to use Python’s pip packaging tool, just as for other packages. For Python3 installations this is usually called pip3 .
1:1 Python GUIs Coaching & Training
Comprehensive code review • Bugfixes & improvements • Maintainability advice and architecture improvements • Design and usability assessment • Suggestions and tips to expand your knowledge • Packaging and distribution help for Windows, Mac & Linux • Find out more.
Install PyQt5 via apt
Packages for PyQt5 are available in the repositories of most distributions, although they may sometimes be out of date. Check first to ensure you’re getting an up to date version, and if not use the pip method above. In Ubuntu you can install either from the command line or via «Software Center». The package you are looking for is named python3-pyqt5 .
You can also install these from the command line as follows —
sudo apt install python3-pyqt5
After install is finished, you should be able to run python (or python3 ) and import PyQt5 without errors.
Python 3.7.6 Type "help", "copyright", "credits" or "license" for more information. >>> import PyQt5 >>>