python - cx\_freeze eksekverbar - Py\_Initialize: Kan ikke indlæse filsystemet codec

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg bruger cx\_freeze til at pakke mit Python script som en selvstændig eksekverbar.
Exe kører fint på maskinen, den var pakket (med python 3,5 og alle de relevante pakker).


Men da jeg kopierede mappen cx\_freeze oprettet til en anden maskine, fik jeg denne fejl:
Indtast billedbeskrivelse her [3]


Mit cx\_freeze script:


import sys
import numpy
import os.path
from cx\_Freeze import setup, Executable

os.environ['TCL\_LIBRARY'] = r'C:UsersAdministratorAppDataLocalProgramsPythonPython36-32	cl	cl8.6'
os.environ['TK\_LIBRARY'] = r'C:UsersAdministratorAppDataLocalProgramsPythonPython36-32	cl	k8.6'


setup(
    name = "DocSum",
    version = "1.0",
    options = {"build\_exe": {"packages":["idna","asyncio", "encodings","numpy", "jinja2.ext"]}},
    description = "DocSumRESTfulServer",
    executables = [Executable("DocSumRESTfulServer.py", base = None)]
    )


Enhver idé hvad kunne være årsagen? Jeg troede, at exe skal være en selvstændig (køre på maskiner uden python). Er jeg forkert?


Tak.

Bedste reference


Det ser ud til, at ikke alle afhængigheder blev kompileret med succes.
Hvis du vil have en selvstændig eksekverbar, anbefaler jeg pyinstaller .


Bare pip installer det da:


pyinstaller.exe --onefile  yourFile.py


- -flagget flag bruges til at pakke alt til en enkelt eksekverbar. Din eksekverbare fil findes i mappen dist .


Du kan også prøve denne side. [4]