Próbuję utworzyć kod exe z kodu Pythona. Mogę uruchomić kod po prostu w porządku z linii poleceń jak poniżej:py2exe nie znajduje wszystkich zależności
python myScript.py
mam zainstalowanego py2exe stąd: http://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/
I mają setup.py, który wygląda tak:
from distutils.core import setup
import py2exe
setup(console=['myScript.py'])
I uruchomić setup.py takiego:
python setup.py py2exe
uzyskać następujące na wyjściu :
The following modules appear to be missing
['Carbon', 'Carbon.Files', '__pypy__', '_scproxy', 'http_parser.http', 'http_parser.reader', 'jinja2._debugsupport', 'jinja2._markupsafe._speedups',
'jinja2.debugrenderer', 'markupsafe', 'pretty', 'socketpool', 'socketpool.util']
I rzeczywiście, gdy próbuję uruchomić exe, otrzymuję błędy:
$ ./myScript.exe
Traceback (most recent call last):
File "restkit\__init__.pyc", line 9, in <module>
File "restkit\conn.pyc", line 14, in <module>
ImportError: No module named socketpool
Traceback (most recent call last):
File "myScript.py", line 12, in <module>
ImportError: cannot import name Resource
Co muszę zrobić, aby uzyskać py2exe znaleźć zależności?
Dzięki
py2exe jest nieco przestarzały (ostatnia zmiana była w 2008 myślę?). Myślę, że [PyInstaller] (http://www.pyinstaller.org/) jest aktywnym projektem i ma znacznie lepsze wsparcie. Ponadto, patrząc na twoje komentarze do innych odpowiedzi, czy masz zainstalowane moduły na poziomie systemu lub czy są one lokalne dla twojego 'myScript.py'? – ernie
Dzięki. Przeniosłem się z py2exe i próbowałem cx-freeze. Moduły są instalowane w katalogu Python. Mogę je zaimportować dobrze z powłoki Pythona. Dam PyInstaller strzał. –
Czy rzeczywiście masz zainstalowane "Carbon" i "Carbon.Files" i można je importować na komputerze z systemem Windows? – abarnert