Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-24 Thread Luca
Il giorno dom 21 mar 2021 alle ore 12:43 Luigi Russo <
giginapol...@outlook.it> ha scritto:

> Allora:
> ho fatto un pò di prove e, con grande amarezza debbo constatare che il
> gioco non vale la candela, alla fine il tutto funziona a patto che vi
> sia Python installato e, se si crea uno standalone fa ne più ne meno di
> quello che fa pyinstaller. E' ovvio che l'interprete ci vuole ma, mi
> sarei aspettato una compilazione pressocché totale e l'integrazione solo
> dei file essenziali. Ora devo vedere solo se creando un exe unico quanto
> tempo impiega ad aprirlo, se decomprime il tutto e lo esegue o fa tutto
> l'exe internamente.
>

Buongiorno Lista,

Mi capitate a fagiuolo.

Proprio in questi giorni sto litigando con la nuova versione di py2exe per
impacchettare un mio piccolo script.
Prima di tornare a py2exe ho provato nuitka, pyinstalle e pyoxidizer (
https://pyoxidizer.readthedocs.io/). Ovviamente senza troppo successo.
Ora quello che dovrei fare io è un semplice launcher, un eseguibilino di
pochi kb che mi permetta di importare dei moduli da filesystem e chiamare
una funzione.
Con il vecchio py2exe e paython27 la cosa funzionava, eseguibile di 33k
python27.dll e altri file *.dll *.pyd e *.pyo in cartella in sys.path.
Visto il poco tempo a disposizione sono tornato appunto a py2exe e ora devo
solo convincerlo a non crearmi lo zip per le librerie.
Però approfitterei di voi per chiedere se qualcuno ha dei suggerimenti per
fare la stessa cosa con nuitka (o altro).

scusate l'intrusione.

grazie.
-- 
Luca
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-21 Thread Luigi Russo

Allora:
ho fatto un pò di prove e, con grande amarezza debbo constatare che il 
gioco non vale la candela, alla fine il tutto funziona a patto che vi 
sia Python installato e, se si crea uno standalone fa ne più ne meno di 
quello che fa pyinstaller. E' ovvio che l'interprete ci vuole ma, mi 
sarei aspettato una compilazione pressocché totale e l'integrazione solo 
dei file essenziali. Ora devo vedere solo se creando un exe unico quanto 
tempo impiega ad aprirlo, se decomprime il tutto e lo esegue o fa tutto 
l'exe internamente.


Ciao da Gigi
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-21 Thread Luigi Russo

Il 21/03/2021 02:05, Gabriele Battaglia ha scritto:

Ciao.
rispondo a me stesso.
Lanciando il prompt in modalità admin, non ho l'errore di accesso negato.

Purtroppo però, il file prodotto continua a non andare bene a Windows 7 
che si rifiuta di eseguirlo.

Peccato... speravo che... cambiando compiler
Grazie Luigi.
A questo punto ti chiedo: cos'ha pyinstaller che non ti piace? Dici che 
da molto tempo cercavi qualcosa che rendesse eseguibili gli scripts .py 


Gigi:
ciao Gabriel,
pyinstaller non è un compilatore, semplicemente fa quello che fa un 
programma di compressione/decompressione quando gli indichi di creare un 
exe autoestraente. In pratica l'exe che crea pyinstaller è lo script 
corredato dell'interprete Python con librerie annesse. Se ci fai caso 
quando avvii l'eseguibile non viene avviato immediatamente poiché prima 
decomprime l'archivio e successivamente esegue lo script.
Il compilatore traduce il codice ad alto livello in codice macchina, 
quindi l'esecuzione è pressocché immediata, a patto che vi sia 
installato il relativo interprete. Nuitka semplicemente trasforma il 
codice Python in codice C e poi lo trasforma in codice macchina.
Tuttavia dovrei provare gli exe generati su di macchine dove Python non 
è installato, mi sta venendo un dubbio.


Ciao da Gigi
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-20 Thread Gabriele Battaglia

Ciao.
rispondo a me stesso.
Lanciando il prompt in modalità admin, non ho l'errore di accesso negato.

Purtroppo però, il file prodotto continua a non andare bene a Windows 7 
che si rifiuta di eseguirlo.

Peccato... speravo che... cambiando compiler
Grazie Luigi.
A questo punto ti chiedo: cos'ha pyinstaller che non ti piace? Dici che 
da molto tempo cercavi qualcosa che rendesse eseguibili gli scripts .py 
e pyinstaller mi pare lo faccia egregiamente.

Gabry.
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-20 Thread Gabriele Battaglia

Ciao Luigi.
Il progetto sembra interessante.
A me però da un errore.
Ho provato sia con l'opzione --onefile che con --standalone
In entrambi i casi ricevo un errore di accesso negato ad un file. Ed ho 
solo la console aperta, senza altri processi.

Come potrei risolvere?

Ecco l'output.

d:\Dropbox\py>nuitka --standalone cartella.py
Nuitka:INFO: Starting Python compilation.
Nuitka:INFO: Completed Python level compilation and optimization.
Nuitka:INFO: Generating source code for C backend compiler.
Nuitka:INFO: Running data composer tool for optimal constant value handling.
Nuitka:INFO: Running C level backend compilation via Scons.
Nuitka-Scons:INFO: Backend C compiler: 
C:\Users\asus\AppData\Local\Nuitka\Nuitka\gcc\x86_64\10.2.0-11.0.0-8.0.0-r5\mingw64\bin\gcc.exe 
(gcc.exe).

Nuitka-Scons:INFO: Compiled 13 C files using ccache.
Nuitka-Scons:INFO: Cached C files (using ccache) with result 'cache hit': 11
Nuitka-Scons:INFO: Cached C files (using ccache) with result 'cache miss': 2
Traceback (most recent call last):
  File "C:\Python39\lib\site-packages\nuitka\__main__.py", line 185, in 


    main()
  File "C:\Python39\lib\site-packages\nuitka\__main__.py", line 171, in 
main

    MainControl.main()
  File "C:\Python39\lib\site-packages\nuitka\MainControl.py", line 755, 
in main

    copyUsedDLLs(
  File "C:\Python39\lib\site-packages\nuitka\freezer\Standalone.py", 
line 1102, in copyUsedDLLs

    used_dlls = detectUsedDLLs(
  File "C:\Python39\lib\site-packages\nuitka\freezer\Standalone.py", 
line 1037, in detectUsedDLLs

    worker_pool.submit(
  File 
"C:\Python39\lib\site-packages\nuitka\utils\ThreadedExecutor.py", line 
45, in submit

    self.results.append(function(*args))
  File "C:\Python39\lib\site-packages\nuitka\freezer\Standalone.py", 
line 1001, in addDLLInfo

    used_dlls = detectBinaryDLLs(
  File "C:\Python39\lib\site-packages\nuitka\freezer\Standalone.py", 
line 976, in detectBinaryDLLs

    return detectBinaryPathDLLsWindowsDependencyWalker(
  File "C:\Python39\lib\site-packages\nuitka\freezer\Standalone.py", 
line 943, in detectBinaryPathDLLsWindowsDependencyWalker

    result = detectDLLsWithDependencyWalker(binary_filename, scan_dirs)
  File "C:\Python39\lib\site-packages\nuitka\freezer\DependsExe.py", 
line 190, in detectDLLsWithDependencyWalker

    deleteFile(dwp_filename, must_exist=True)
  File "C:\Python39\lib\site-packages\nuitka\utils\FileOperations.py", 
line 307, in deleteFile

    os.unlink(path)
PermissionError: [WinError 32] Impossibile accedere al file. Il file è 
utilizzato da un altro processo: 'cartella.dist\\cartella.exe.dwp'


d:\Dropbox\py>
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-20 Thread Carlos Catucci
Il programma si chiama Nuitka, in sostanza non è altro che un modulo da
> installare. Il sito di riferimento è:
> http://nuitka.net/


Muchas gragias, hai anche fatto quelahce test per valutare l'incremento di
prestazioni?

Carlos
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


[Python] Compilare script con Python è possibile grazie a Nuitka

2021-03-20 Thread Luigi Russo

Salve,
sicuramente sarà qualcosa di già passato, sicuramente ci saranno alcune 
situazioni dove non funziona correttamente, però, finalmente dopo tanto 
ho trovato un programma che mi compila in linguaggio a basso livello e 
rende eseguibile uno script Python.
Il programma si chiama Nuitka, in sostanza non è altro che un modulo da 
installare. Il sito di riferimento è:

http://nuitka.net/
In sostanza trasforma il codice Python prima in C e poi effettua la 
compilazione vera e propria.
Sul sito sopracitato ci sono gli eseguibili per le varie versioni di 
Python, tuttavia potete installarlo anche via pip

pip install nuitka
Per compilare, dal prompt dei comandi dare il comando nuitka 
nomescript.py e dare INVIO.
Nota: la prima volta chiederà di scaricare ed installare alcuni 
pacchetti tra cui MinGw, una volta che ha scaricato il tutto procede 
alla compilazione, prima trasformando il codice in c e poi generando 
l'exe con Mingw.


Ciao da Gigi
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python