Jeg har ikke leget med pyinstaller, men har tidligere brugt
py2exe og
cx_freeze. Py2exe laver kun til exe filer, som navnet antyder, mens cx_freeze kan lave binaries til andre platforme (f.eks. Linux).
Programmerne virker ved at indsamle de python moduler dit python program bruger. Dette inkluderer også lavniveau-biblioteker, som DLL filer visse moduler bruger. Når den har indsamlet disse ting, lægger den også en kopi af Python fortolkeren med. Når exe filen så kører opstarter den Python interpreteren som kører dit program. Det er sådan det virker fra hukommelsen af. Et typisk problem, er hvis den overser noget programmet bruger og ikke pakker det med. Det problem kan jeg huske at have haft med py2exe.
Her er
linket til manualen for pyinstaller som beskriver hvordan den virker. Som du kan se, hvis du har et relativt simpelt program, skal du blot køre:
pyinstaller myscript.pyFor at uddybe det Dan skriver. Brugerne behøver
ikke at installere Python på samme måde, som du har gjort for at udvikle på det. Men det er sandt at Python fortolkeren bliver bundlet med ved siden af. I forhold til en "rå" .exe fil, fylder det en del, men der er væsentlig mindre end hvad en fuld python installation gør. Omkring 5-8MB for en applikation som kun bruger standard Python ting ser ud til at være normen.
Indlæg senest redigeret d. 03.03.2016 19:56 af Bruger #14645