Fedora Online Forum

Il forum della comunità italiana di Fedora

#1 26-09-2018 16:26:20

punico
Pinguino avanzato
Registrato: 07-11-2012
Messaggi: 289

[Risolto] Installazione di PyQt5

Vorrei installare il pacchetto PyQt5 ed ho trovato Questa guida
La guida elenca una serie di librerie come requisiti all'installazione di PyQt5, senza esporre il comando per le relative installazioni.
Perciò non posso fare altro che chiedere a chi ha esperienza su Python e pyqt.

Ultima modifica di punico (29-09-2018 14:49:24)


Ciao,
Petrus

Non in linea

#2 26-09-2018 17:13:02

bebo_sudo
Collaboratore
Da Trento+Trieste
Registrato: 28-02-2011
Messaggi: 1'691
Sito web

Re: [Risolto] Installazione di PyQt5

Ciao punico,
quella che hai linkato non e' una guida, ma un sito che raccoglie informazioni su pacchetti di varie ditro linux.

Penso che ti servira' installare questo:

# dnf install python3-qt5-devel

non ho una fedora recente su cui testare purtroppo. Ci sono anche altri pacchetti nei repo, puoi cercarli con un 'dnf search python3-qt5'.

A questo punto dovresti avere tutto cio' che ti serve per iniziare a programmare qt con python.


Documentation Admin                ~~~~~                La pigrizia sterminerà l'umanità.

Non in linea

#3 26-09-2018 22:01:16

punico
Pinguino avanzato
Registrato: 07-11-2012
Messaggi: 289

Re: [Risolto] Installazione di PyQt5

Ho eseguito: "# dnf install python3-qt5-devel"
ma non è stato sufficiente. Allora ho esguito:

dnf search python3-qt5
Ultima verifica della scadenza dei metadati: 0:07:19 fa il mer 26 set 2018 22:37:01 CEST.
====================== Nome Exactly Matched: python3-qt5 =======================
python3-qt5.x86_64 : Python 3 bindings for Qt5
python3-qt5.i686 : Python 3 bindings for Qt5
===================== Nome & Sommario Matched: python3-qt5 =====================
python3-qt5-devel.x86_64 : Development files for python3-qt5
python3-qt5-devel.i686 : Development files for python3-qt5
========================== Nome Matched: python3-qt5 ===========================
python3-qt5-base.x86_64 : Python 3 bindings for Qt5 base
python3-qt5-base.i686 : Python 3 bindings for Qt5 base
python3-qt5-webkit.x86_64 : Python3 bindings for Qt5 Webkit
python3-qt5-webengine.x86_64 : Python3 bindings for Qt5 WebEngine

allora ho eseguito i tentativi seguenti:

# dnf install python3-qt5.x86_64
Ultima verifica della scadenza dei metadati: 0:13:04 fa il mer 26 set 2018 22:37:01 CEST.
Il pacchetto python3-qt5-5.10.1-4.fc28.x86_64 è già installato, viene ignorato.
Dipendenze risolte.
Nothing to do.
Fatto!
[[email protected] petrus]# dnf install python3-qt5-devel.x86_64
Ultima verifica della scadenza dei metadati: 0:14:31 fa il mer 26 set 2018 22:37:01 CEST.
Il pacchetto python3-qt5-devel-5.10.1-4.fc28.x86_64 è già installato, viene ignorato.
Dipendenze risolte.
Nothing to do.
Fatto!

Da quello che scaturito a me sembrerebbe che l'installazione sia completa, ma in "Applicazioni -> Sviluppo" manca la riga con l'icona d'avvio di PyQt5. Non riesco nemmeno ad avviarlo da terminale. Provo a riavviare il SO.


Ciao,
Petrus

Non in linea

#4 26-09-2018 22:34:35

bebo_sudo
Collaboratore
Da Trento+Trieste
Registrato: 28-02-2011
Messaggi: 1'691
Sito web

Re: [Risolto] Installazione di PyQt5

Le Qt sono una libreria, non un programma da eseguire direttamente. Ossia le richiami da dentro ai tuoi programmi (in questo caso hai installato il binding, la "versione", per python) e le usi per farci delle GUI.

Hai provato a seguire una guida all'utilizzo? Queste sono le prime due che ho trovato con una ricerca: http://pyqt.sourceforge.net/Docs/PyQt5/ … ation.html https://pythonspot.com/pyqt5/
Se invece cercavi un qualcosa di grafico con cui lavorare (solitamente il codice che producono quegli affari e' abbastanza "sporco" pero') puoi usare qtcreator ad esempio.

Se hai bisogno di aiuto piu' specifico abbiamo bisogno di capire cosa vuoi fare.


Documentation Admin                ~~~~~                La pigrizia sterminerà l'umanità.

Non in linea

#5 27-09-2018 11:59:37

punico
Pinguino avanzato
Registrato: 07-11-2012
Messaggi: 289

Re: [Risolto] Installazione di PyQt5

So benissimo che Qt è un insieme di librerie, ma io mi riferisco a PyQt5 che è un software che sfrutta le librerie Qt e che può essere avviato in maniera indipendente per disegnare l'interfaccia grafica di collegamento fra utente e codice python.
Quindi, come succede per Ubuntu, io, utente ignorante di python, di Qt e di PyQt, mi aspetto che anche per Fedora PyQt5, una volta installato, possa essere avviato da gnome, cliccando su un'icona della sezione sviluppo o, a piacimento, da linea di comando attraverso una parola chiave.
Non capisco perciò, per i miei eterni limiti, come mai, se le installazioni fatte in Fedora sono state eseguite correttamente, non riesco in nessun modo ad avviare pyqt5,


Ciao,
Petrus

Non in linea

#6 27-09-2018 14:26:46

bebo_sudo
Collaboratore
Da Trento+Trieste
Registrato: 28-02-2011
Messaggi: 1'691
Sito web

Re: [Risolto] Installazione di PyQt5

io mi riferisco a PyQt5 che è un software che sfrutta le librerie Qt e che può essere avviato in maniera indipendente per disegnare l'interfaccia grafica di collegamento fra utente e codice python

No, le pyqt5 sono anche loro delle librerie, solo che anziche' essere delle librerie C++ per fare GUI, sono librerie python (che sono collegate a quelle C++, da cui il termine "binding").
Lo puoi vedere facilmente dai file che installa l'rpm, ad es nel link che hai inserito te nel primo messaggio, scorri fino alla sezione "Files" e vedrai che quel'rpm installera' dei file in /usr/lib/python3.6/site-packages/PyQt5/, che significa che una volta installate ti basta importare la libreria col nome 'PyQt5'.

$ cat /etc/fedora-release 
Fedora release 25 (Twenty Five)

$ python3.5
Python 3.5.4 (default, Oct  9 2017, 12:07:29) 
[GCC 6.4.1 20170727 (Red Hat 6.4.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt5
>>> PyQt5.__file__
'/usr/lib64/python3.5/site-packages/PyQt5/__init__.py'

Questo e' quello che succede sulla mia f25 con python 3.5.

mi aspetto che anche per Fedora PyQt5, una volta installato, possa essere avviato da gnome

No, se vuoi un IDE per disegnare GUI ti serve qt-creator o programmi simili, ma come ti diceva frafra nell'altra discussione che hai aperto https://forum.fedoraonline.it/viewtopic … 76#p247676, qt-creator non e' necessario per programmare le qt, e' solo un "aiuto" al programmatore/grafico.

Quindi, se il tuo scopo e' disegnare interfacce grafiche, ti basta installare qt-creator, e seguire qualche tutorial, ad es. questo della doc ufficiale: https://doc.qt.io/qtcreator/qt-creator- … ample.html

Se poi scrivere la connessione tra logica e grafica in C++ e' troppo pesante, allora potresti usare PyQt5, ossia uno "strato" in python che ti permette di usare le Qt senza dover passare da C++.


Documentation Admin                ~~~~~                La pigrizia sterminerà l'umanità.

Non in linea

#7 27-09-2018 16:34:54

punico
Pinguino avanzato
Registrato: 07-11-2012
Messaggi: 289

Re: [Risolto] Installazione di PyQt5

Non capisco.
Ho installato PyQt5 anche su Ubuntu Mate e nel pannello delle applicazioni, alla sezione Programmazione, dopo l'installazione di PyQt5, vengono visulaizzate 3 icone relative a PyQt5: Progettazione Qt 5,  Qt5 Assistant e Qt5 Linguist. Soffermandovi "Progettazione Qt 5", posso dire che cliccandovi sopra si apre la finestra del Qt Designer ed un form dove posso aggiungere tutti i widget che voglio.
Per ottenere ciò, sempre in Ubuntu, ho installato python3-pyqt5,  pyqt5-dev-tools, qttools5-dev-tools.
Ciò in autonomia, senza attingere all'esperienza di amatori profondi conoscitori delle tecniche di utilizzo del nuovo strumento.

Purtroppo questo in Fedora non è possibile.
Attenzione!  Non faccio nessuna critica, sto soltanto raccontando la mia recentissima breve esperienza. Io amo Fedora perchè ho conosciuto Linux proprio installando per la prima vola, come prima distro, proprio Fedora. Amo questo Forum che infastidisco sempre con domande per le mie ricerche. Posso rammaricarmi per essere cresciuto poco e non essere riuscito ad essere completamente autosufficiente.

A me piace scrivere programmi per applicativi ed ho sempre mirato a gestire due SO. Linux diversi, ma capaci di ospitare gli stessi ambienti di programmazione, allo scopo di non restare mai sprovvisto dei miei programmi giornalieri e della mia personale fucina di programmazione.
Ho scritto in Gambas un più che impegnativo progetto di contabilità familiare, corredato di diversi programmi.
Da qualche tempo a questa parte penso di scrivere i prossimi programmi in un altro linguaggio, aperto a più piattaforme operative. Per questo ho pensato,in successione, al C++, al Python ed anche al Java. Il C++ sembra che sia il pù complesso dei tre, ma l'avevo cominciato a studiare ugualmente, fino a quando mi sono arenato sulle Qt. Allora ho pensato a Python, sostenuto dalla presenza di PyQt che, avevo capito, permette di combinare il codice Python con le librerie Qt, senza grossi sforzi. Invece, anche qui arrivano i supplizi Qt con tutto il suo seguito di designer, creator, ...
Personalmente penso che con PyQt non dovrei nemmeno accorgermi dell'esistenza di tali componenti.
Non so, sono confuso e deluso!!!


Ciao,
Petrus

Non in linea

#8 27-09-2018 17:43:17

bebo_sudo
Collaboratore
Da Trento+Trieste
Registrato: 28-02-2011
Messaggi: 1'691
Sito web

Re: [Risolto] Installazione di PyQt5

Per ottenere ciò, sempre in Ubuntu, ho installato python3-pyqt5,  pyqt5-dev-tools, *qttools5-dev-tools*.

Ah ecco, questo pero' non l'avevi detto.. Certo, se installi *anche* altri pacchetti oltre a python3-pyqt5 puo' succedere di trovarsi installate *anche* altre cose.
Anche su ubuntu, se installi python3-pyqt5 avrai le stesse (a meno di cambi di versione) librerie disponibili in python, come ti ho mostrato prima. (link al contenuto del pacchetto python3-pyqt5 di ubuntu: https://ubuntu.pkgs.org/18.04/ubuntu-un … .deb.html)
Adesso ci dici di aver installato anche qttols5-dev-tools, che contiene questi file: https://ubuntu.pkgs.org/18.04/ubuntu-un … 4.deb.html . Se fai una ricerca sulla parola '.desktop' vedrai due file evidenziati nella lista: i file .desktop piazzati in /usr/share/applications/ sono i link su cui clicchi dai vari DE (gnome, xfce, etc.)

Purtroppo questo in Fedora non è possibile.

Se provi a cercare con 'dnf search qttools' vedrai che ci sono un po' di pacchetti anche in fedora; in particolare c'e' qt5-qttools-devel, e se provi ad installarlo vedrai che si trascinera' dietro delle dipendenze:

# dnf install --assumeno qt5-qttools-devel
Last metadata expiration check: 3:34:51 ago on Thu Sep 27 15:06:03 2018.
Dependencies resolved.
====================================================================================
 Package                                Arch      Version          Repository  Size
====================================================================================
Installing:
 qt5-designer                           x86_64    5.7.1-4.fc25     updates    204 k
 qt5-linguist                           x86_64    5.7.1-4.fc25     updates    888 k
 qt5-qdoc                               x86_64    5.7.1-4.fc25     updates    495 k
 qt5-qhelpgenerator                     x86_64    5.7.1-4.fc25     updates     24 k
 qt5-qttools                            x86_64    5.7.1-4.fc25     updates     45 k
 qt5-qttools-devel                      x86_64    5.7.1-4.fc25     updates    267 k
 qt5-qttools-libs-designercomponents    x86_64    5.7.1-4.fc25     updates    791 k

Se guardi dentro al pacchetto qt5-designer troverai dei file .desktop che dovrebbero essere simili a quelli che vedi su ubuntu.
Probabilmente la struttura dei pacchetti e' diversa, ma il contenuto dovrebbe essere uguale.

Allora ho pensato a Python, sostenuto dalla presenza di PyQt che, avevo capito, permette di combinare il codice Python con le librerie Qt, senza grossi sforzi.

Questo e' giusto, come ti dicevo anche prima sopra.

Invece, anche qui arrivano i supplizi Qt con tutto il suo seguito di designer, creator, ...

e come ti dicevo prima, e anche frafra nell'altra discussione che hai aperto, NON E' NECESSARIO usare qt-creator/qt-designer. Sono strumenti che qualcuno trova utili, altri no.
Ma come ti ho fatto vedere nel terminale prima, se vuoi usare le PyQt5 ti basta installare python3-pyqt5, aprire l'interprete python (o scrivere uno script/programma ed eseguirlo) e potrai usare Qt dentro a Python, senza dover installare o usare qt-creator o compagnia.

Personalmente penso che con PyQt non dovrei nemmeno accorgermi dell'esistenza di tali componenti.

Corretto. Sono degli strumenti opzionali, aggiuntivi.


Documentation Admin                ~~~~~                La pigrizia sterminerà l'umanità.

Non in linea

#9 27-09-2018 22:02:31

punico
Pinguino avanzato
Registrato: 07-11-2012
Messaggi: 289

Re: [Risolto] Installazione di PyQt5

bebo_sudo ha scritto:

Se provi a cercare con 'dnf search qttools' vedrai che ci sono un po' di pacchetti anche in fedora; in particolare c'e' qt5-qttools-devel, e se provi ad installarlo vedrai che si trascinera' dietro delle dipendenze

dnf search qttools
Ultima verifica della scadenza dei metadati: 2:20:31 fa il gio 27 set 2018 19:51:51 CEST.
======================= Sommario & Nome Matched: qttools =======================
qt5-qttools-doc.noarch : Documentation for qttools
qt5-qttools-common.noarch : Common files for qt5-qttools
qt5-qttools-devel.i686 : Development files for qt5-qttools
qt5-qttools-devel.x86_64 : Development files for qt5-qttools
qt5-qttools-static.i686 : Static library files for qt5-qttools
qt5-qttools-static.x86_64 : Static library files for qt5-qttools
mingw32-qt5-qttools.noarch : Qt5 for Windows - QtTools component
mingw64-qt5-qttools.noarch : Qt5 for Windows - QtTools component
qt5-qttools-examples.i686 : Programming examples for qt5-qttools
qt5-qttools-examples.x86_64 : Programming examples for qt5-qttools
mingw32-qt5-qttools-tools.x86_64 : Qt5 for Windows - QtTools component
mingw64-qt5-qttools-tools.x86_64 : Qt5 for Windows - QtTools component
============================ Nome Matched: qttools =============================
qt5-qttools.x86_64 : Qt5 - QtTool components
qt5-qttools-libs-help.x86_64 : Qt5 Help runtime library
qt5-qttools-libs-help.i686 : Qt5 Help runtime library
qt5-qttools-libs-designer.x86_64 : Qt5 Designer runtime library
qt5-qttools-libs-designer.i686 : Qt5 Designer runtime library
qt5-qttools-libs-designercomponents.i686 : Qt5 Designer Components runtime
                                         : library
qt5-qttools-libs-designercomponents.x86_64 : Qt5 Designer Components runtime
                                           : library

e poi

# dnf install qt5-qttools-devel.x86_64
Ultima verifica della scadenza dei metadati: 2:35:32 fa il gio 27 set 2018 19:51:51 CEST.
Dipendenze risolte.
================================================================================
 pacchetto                             Arch     Versione        Repository
                                                                           Dim.
================================================================================
Installazione in corso:
 qt5-qttools-devel                     x86_64   5.11.1-2.fc28   updates   273 k
Installazione dipendenze:
 qt5-designer                          x86_64   5.11.1-2.fc28   updates   166 k
 qt5-doctools                          x86_64   5.11.1-2.fc28   updates   558 k
 qt5-linguist                          x86_64   5.11.1-2.fc28   updates   915 k
 qt5-qttools                           x86_64   5.11.1-2.fc28   updates    49 k
 qt5-qttools-libs-designercomponents   x86_64   5.11.1-2.fc28   updates   808 k

Riepilogo della transazione
================================================================================
Installati  6 pacchetti

Dimensione totale dello scaricamento: 2.7 M
Dimensione installata: 9.5 M
Procedere [s/N]: s
Scaricamento dei pacchetti:
(1/6): qt5-designer-5.11.1-2.fc28.x86_64.rpm    183 kB/s | 166 kB     00:00    
(2/6): qt5-qttools-devel-5.11.1-2.fc28.x86_64.r 238 kB/s | 273 kB     00:01    
(3/6): qt5-doctools-5.11.1-2.fc28.x86_64.rpm    446 kB/s | 558 kB     00:01    
(4/6): qt5-qttools-5.11.1-2.fc28.x86_64.rpm     192 kB/s |  49 kB     00:00    
(5/6): qt5-linguist-5.11.1-2.fc28.x86_64.rpm    1.2 MB/s | 915 kB     00:00    
(6/6): qt5-qttools-libs-designercomponents-5.11 1.6 MB/s | 808 kB     00:00

E finalmente in /usr/share/applications sono comparsi :

qt5-designer.desktop
qt5-linguist.desktop

Ho provato ad avviare da Gnome e, finalmeeeeente, si è aperto Qt designer.
Però, che fatica. Ma senza il tuo contributo diretto, con costruttiva caparbietà, a farmi riuscire nell'impresa, non ce l'avrei mai fatta.

se vuoi usare le PyQt5 ti basta installare python3-pyqt5, aprire l'interprete python (o scrivere uno script/programma ed eseguirlo) e potrai usare Qt dentro a Python, senza dover installare o usare qt-creator o compagnia.

Si, è vero, ma costruire un ambiente grafico per mezzo di script python, secondo me, è pesante; è molto più agevole disporre di uno strumento da disegno che dia l'idea pratica di ciascun widget da inserire e della sua posizione nel form corrente in costruzione.

Grazie.


Ciao,
Petrus

Non in linea

#10 27-09-2018 22:37:08

bebo_sudo
Collaboratore
Da Trento+Trieste
Registrato: 28-02-2011
Messaggi: 1'691
Sito web

Re: [Risolto] Installazione di PyQt5

è molto più agevole disporre di uno strumento da disegno che dia l'idea pratica di ciascun widget da inserire e della sua posizione nel form corrente in costruzione.

E' vero, all'inizio e' piu' facile usare uno strumento drag-and-drop, pero' tutti gli sviluppatori di GUI che ho conosciuto evitano di usare i cosidetti "gui builder", e qui c'e' una spiegazione: https://appunti-wxpython.readthedocs.io … usare.html

Se sei ancora all'inizio delle tue sperimentazioni, forse potresti essere interessato anche a wxPython, un'altra libreria per costruzione GUI in python, che un paio di anni fa ho trovato personalmente piu' semplice di Qt. E il link qui sopra viene da alcuni appunti di un ragazzo italiano molto in gamba, che ti consiglio di guardare se sei interessato a quella libreria (oltre al resto della doc in inglese): https://appunti-wxpython.readthedocs.io/en/latest/

Intanto, buon divertimento con le Qt!

Ultima modifica di bebo_sudo (27-09-2018 22:37:50)


Documentation Admin                ~~~~~                La pigrizia sterminerà l'umanità.

Non in linea

Piè di pagina