PyQt6 sur le Pi ?

Python est le langage de prédilection du Raspberry Pi

Modérateurs : Francois, Manfraid

Répondre
smog
Messages : 46
Enregistré le : mar. 24 nov. 2020 08:03

PyQt6 sur le Pi ?

Message par smog » jeu. 2 nov. 2023 16:07

Bonjour à tous,

Est-ce que l'un(e) d'entre vous a réussi à installer PyQt6 sur son Pi ?
Je n'y arrive pas sur un 3B+ avec Raspi Bullseye 64 bits.
D'après ce qui est dit sur certains sites, PyQt6 est bien installable (mais ils ne précisent pas s'ils l'ont réellement fait, nuance).
J'arrive sans souci à installer PyQt5 par contre...
Est-ce lié au 64 bits ? Je n'ai pas testé sur un Raspbian OS 11 en 32 bits...

Merci !

piper
Modérateur
Messages : 697
Enregistré le : sam. 5 juin 2021 18:57

Re: PyQt6 sur le Pi ?

Message par piper » jeu. 2 nov. 2023 21:55

Bonjour, je viens d'essayer sur mon PI3B+ sous Bullseye 64 bits :
cela ça s'arrête rapidement avec le message Preparing metadata (pyproject.toml) did not run successfully,
note: This error originates from a subprocess, and is likely not a problem with pip

Une petite recherche sur google m'invite à vérifier les requirements de Qt6
https://doc.qt.io/qt-6/supported-platforms.html

Si on n'y parle pas de Raspberry, on y parle d'Ubuntu (donc de Debian qui est l'OS officiel des Pi à quelques détails)
Et, il est indiqué, pour la version 64 bits (x86_64), qu'il faut disposer de gcc en version 11 à minima

Et là, c'est le drame :

Code : Tout sélectionner

pi@piwifi:~# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/10/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: ../src/configure -v --with-pkgversion='Raspbian 10.2.1-6+rpi1' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=arm-linux-gnueabihf- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --disable-libquadmath-support --enable-plugin --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --disable-werror --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.1 20210110 (Raspbian 10.2.1-6+rpi1)
gcc est en version 10 !

Mais

Code : Tout sélectionner

pi@piwifi:~# sudo apt-get install gcc
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait
gcc est déjà la version la plus récente (4:10.2.1-1+rpi1).
Il n'y a pas de version plus récente de gcc qui soit disponible et comme BullsEye est passé en version "oldstable", il n'y en aura jamais
Il y aurait bien une autre solution : une installation manuelle de la dernière version de gcc (sans passer par gestionnaire de paquet comme apt).
Mais là, ce n'est pas pour les débutants en Linux.

Alors petit tour que BookWorm (la dernière version de l'OS)

Code : Tout sélectionner

pi@pi2w:~# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/12/lto-wrapper
Target: aarch64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 12.2.0-14' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.2.0 (Debian 12.2.0-14)
Là; gcc est en version 12, donc Qt6 devrait pouvoir s'installer sauf que sur ce pi (qui est un pi zero 2w) je n'essaierai pas : ses 512 Mo de RAM sont trop peu et certaines installation le font figer par manque de mémoire.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

smog
Messages : 46
Enregistré le : mar. 24 nov. 2020 08:03

Re: PyQt6 sur le Pi ?

Message par smog » jeu. 2 nov. 2023 22:59

Mille mercis pour toutes ces précisions très complètes, Piper.

Effectivement c'est plus complexe que ça en avait l'air. C'est très clair en tous les cas.

Je ne m'étais pas penché sur Bookworm parce que cet OS me paraît trop "frais" et il y a semble-t-il pas mal de soucis de jeunesse (compatibilité etc.)
Mais je vais essayer sur mon Pi 4 : Bookworm + PyQt6. Après tout, ce sera a priori uniquement pour gérer des événements déclenchés par une LDR, donc python, PyQt et quelques trucs basiques qui devraient passer.

Encore merci ; je teste et je reviendrai faire le point sur mon avancée. Bonne soirée !

smog
Messages : 46
Enregistré le : mar. 24 nov. 2020 08:03

Re: PyQt6 sur le Pi ?

Message par smog » ven. 3 nov. 2023 11:47

Je viens de tester sous Raspberry Pi OS v12 alias BookWorm : ça marche !

Code : Tout sélectionner

sudo apt install python3-pyqt6
Merci encore piper !

piper
Modérateur
Messages : 697
Enregistré le : sam. 5 juin 2021 18:57

Re: PyQt6 sur le Pi ?

Message par piper » ven. 3 nov. 2023 21:24

Cool, oui, tu as du voir aussi qu'avec BookWorm, pip est très déconseillé : la peur que cela casse les dépendances systèmes
Il est fortement recommandé (sauf à créer un environnement virtuel) d'utiliser un paquet officiel s'il existe donc installation avec apt, comme tu l'as fait.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

smog
Messages : 46
Enregistré le : mar. 24 nov. 2020 08:03

Re: PyQt6 sur le Pi ?

Message par smog » sam. 4 nov. 2023 10:39

piper a écrit :
ven. 3 nov. 2023 21:24
Cool, oui, tu as du voir aussi qu'avec BookWorm, pip est très déconseillé : la peur que cela casse les dépendances systèmes
Il est fortement recommandé (sauf à créer un environnement virtuel) d'utiliser un paquet officiel s'il existe donc installation avec apt, comme tu l'as fait.
Oui effectivement !
Merci encore

CharlotteFilemdar
Messages : 5
Enregistré le : jeu. 23 nov. 2023 08:48

Re: PyQt6 sur le Pi ?

Message par CharlotteFilemdar » mer. 3 janv. 2024 12:52

Bonjour,

Oui, j'ai réussi à installer PyQt6 sur mon Pi 3B+ avec Raspi Bullseye 64 bits.

Voici les étapes que j'ai suivies :

J'ai mis à jour mon Pi avec les dernières mises à jour.

J'ai installé les dépendances nécessaires avec la commande suivante :
sudo apt-get install build-essential python3-dev qtbase5-dev qtdeclarative5-dev qt5-qmltooling qt5-qtmultimedia

J'ai téléchargé le code source de PyQt6 depuis le site Web de PyQt.

J'ai décompressé le code source avec la commande suivante :

unzip pyqt6-x.y.z.zip
Je suis entré dans le répertoire du code source avec la commande suivante :
cd pyqt6-x.y.z
J'ai construit et installé PyQt6 avec la commande suivante :
python3 setup.py build
python3 setup.py install
Après avoir suivi ces étapes, PyQt6 a été installé avec succès sur mon Pi.

Je ne sais pas si le problème est lié au 64 bits. Vous pouvez essayer d'installer PyQt6 sur un Raspbian OS 11 en 32 bits pour voir si cela résout le problème.

Répondre

Retourner vers « Python »