Creare un eseguibile in Python
Compilare uno script con Pyinstaller
Python è un linguaggio di programmazione semplice e molto diffuso. Sicuramente avrete realizzato degli script che vorrete condividere con qualcuno che non è abbastanza esperto da configurare un interprete ed avviare il programmino.
In questa guida vedremo come è possibile creare facilmente un file eseguibile (compilato) di un progetto Python, su tutti i sistemi operativi. Sarà quindi possibile fare doppio click sull’icona del programma per avviarlo, il procedimento funziona ed è uguale per tutti i sistemi operativi che sia Microsoft, Linux o Mac.
La prima cosa da fare è installare il pacchetto PYINSTALLER che si occupa di compilare il progetto, dal prompt dei comandi di Windows o dal terminale Unix digitate il comando:
pip3 install pyinstaller
A questo punto si è pronti per compilare il vostro progetto Python.
Spostarsi nella cartella che contiene i file o i file del vostro progetto, ed individuare il file principale (main).
Ora avviamo la compilazione con il comando:
pyinstaller nome_script.py --noconsole --onefile
Compariranno nella cartella del vostro progetto altre due folder, una chiamata BUILD ed una DIST. All’interno della cartella DIST ci sarà un file eseguibile che è possibile avviare sin da subito, attenzione solo se il vostro programma cerca dei file nella stessa cartella, sarà quindi necessario spostarlo nella radice corretta. La cartella BUILD contiene invece i file di compilazione, possiamo ignorarli o cancellare addirittura questa cartella una volta fatto.
Gli argomenti dei comandi –noconsole e — onefile servono rispettivamente per evitare che venga aperta una finestra della console durante l’esecuzione di programmi con interfaccia grafica, mentre l’altro serve a inglobbare tutti i moduli e librerie (Django, TKinter e .dll) in un unico file.
ATTENZIONE!
Il modulo pyinstaller non è un cross-compiler, una volta compilato un eseguibile sarà avviabile solo dallo stesso sistema operativo, se siamo su Windows verrà creato un file .exe avviabile solo da Windows, oppure un file .app per Mac avviabile solo da MacOS, e gli eseguibili Linux saranno avviabili sono da Linux.
Un altra cosa a cui prestare attenzione è la versione dell’interprete, al momento in cui scrivo è compatibile solo con l’interpreti python versioni 2.7 e dalla 3.5 alla 3.7. Essendo disponibile l’interprete versione 3.8, se installato la compilazione non andrà a buon fine; bisogna avere interprete 2.7 o le versioni tra 3.5 e 3.7.
Potrebbe interessarti, anche come ottenere il MAC address, in Python.
Siti di riferimento e fonti
www.programmareinpython.it/blog/come-creare-file-eseguibili-python-da-py-exe/
Un commento
Pingback: