PyInstaller编译的应用程序无法启动(FileNotFoundError)

2024-10-02 10:33:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我想改变我的主.py使用pyinstaller编写Mac上可执行文件的脚本,我在这方面遇到了困难。在

pyinstaller --onefile main.py似乎顺利通过,但当我尝试启动生成的可执行文件时,我收到以下消息:

Traceback (most recent call last):
  File "/Users/waterfalls/PycharmProjects/newnew/dist/main.app/Contents/Resources/__boot__.py", line 148, in <module>
    _run()
  File "/Users/waterfalls/PycharmProjects/newnew/dist/main.app/Contents/Resources/__boot__.py", line 82, in _run
    exec(compile(source, path, 'exec'), globals(), globals())
  File "/Users/waterfalls/PycharmProjects/newnew/dist/main.app/Contents/Resources/main.py", line 6, in <module>
    import cairosvg.svg
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 668, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
  File "cairosvg/__init__.pyc", line 37, in <module>
FileNotFoundError: [Errno 2] No such file or directory: '/Users/waterfalls/PycharmProjects/newnew/dist/main.app/Contents/MacOS/VERSION'
2018-10-14 03:25:55.473 main[23382:4662269] main Error
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Process completed]

它标记的版本文件确实不存在。我不知道怎样才能到达那里

使用pyinstaller --windowed main.pyYes生成程序会导致大量复制失败标志警告:

^{pr2}$

等等

cairosvg --version让我2.2.1

python3 --version3.7.0

pyinstaller --version是3.5.dev0+0b6f1ec6f(尝试通过更新到devbuild来解决此问题)

还有其他人经历过吗?如何编译可执行文件?在

编辑1:

好吧,所以问题肯定出在cairosvg和pyinstaller中的某个地方,因为只要我注释掉使用该库的部件,应用程序就成功地启动并工作。我怀疑PyInstaller没有从cairo复制bundle所需的文件,因为它们的格式不正确。在


Tags: inpyappmaindistlinecontentsusers

热门问题