尝试运行使用 pyinstaller 创建的 Mac 应用程序时,“加载 Python 库时出错”...“找不到图像错误”是什么意思?

时间:2021-06-19 13:40:05

标签: python pyinstaller

Mac Big Sur 上的 Python 3.9 使用最新版本的 pyinstaller。

我有一个正常运行的脚本名称 Read_CSV_Barplot.py,我想使用 pyinstaller 将其制作成 .app。运行 pyinstaller 时,我收到一些警告但没有错误消息。下面是我的 .spec 文件,我在其中修改了 pathex 以包含存储所需模块的目录 site-packages。尝试在终端上运行生成的 .app 时,我收到以下错误消息,我正在尝试破译:

Error loading Python lib '/Users/fishbacp/Desktop/dist/Read_CSV_Barplot.app/Contents/MacOS/Python': dlopen:
dlopen(/Users/fishbacp/Desktop/dist/Read_CSV_Barplot.app/Contents/MacOS/Python, 10): image not found 

这是 .spec 文件:

block_cipher = None

a = Analysis(['Read_CSV_Barplot.py'],
         pathex=['/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages', '/Users/fishbacp/Desktop'],
         binaries=[],
         datas=[],
         hiddenimports=[],
         hookspath=[],
         runtime_hooks=[],
         excludes=[],
         win_no_prefer_redirects=False,
         win_private_assemblies=False,
         cipher=block_cipher,
         noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
         cipher=block_cipher)
exe = EXE(pyz,
      a.scripts,
      [],
      exclude_binaries=True,
      name='Read_CSV_Barplot',
      debug=False,
      bootloader_ignore_signals=False,
      strip=False,
      upx=True,
      console=True )
coll = COLLECT(exe,
           a.binaries,
           a.zipfiles,
           a.datas,
           strip=False,
           upx=True,
           upx_exclude=[],
           name='Read_CSV_Barplot')

app = BUNDLE(exe,name='Read_CSV_Barplot.app',icon=None,bundle_identifier=None)

我以前从未遇到过这种类型的错误消息,这就是我的困惑所在。

1 个答案:

答案 0 :(得分:0)

根据 https://github.com/pyinstaller/pyinstaller/issues/2047 上的帖子,我在规范文件中的 Bundle 中将 exe 更改为 coll

在尝试运行新应用程序时,我遇到了不同的错误消息,“找不到 _tkinter”。我使用 brew install python-tk

更正了这个问题

现在一切正常。