Why Do I get an ImportError when building a .exe with pyinstaller?

前端 未结 4 479
北恋
北恋 2020-12-05 12:11

I just created a small GUI program that compiles and works fine in IPython, but when I try to export it to a .exe using pyinstaller it gives me an import error.

4条回答
  •  悲&欢浪女
    2020-12-05 12:32

    its better to use spec file to import another hidden libraries maybe cause the problem. I list all Sklearn libraries and add to spec file as a hiddenimports like this:

      # -*- mode: python -*-
    
    block_cipher = None
    
    
    a = Analysis(['MyPythonApplication.py'],
                 pathex=['..\\ApplicationFolder'],
                 binaries=[],
                 datas=[],
                 hiddenimports=['cython', 'sklearn', 'sklearn.ensemble', 'sklearn.neighbors.typedefs', 'sklearn.neighbors.quad_tree', 'sklearn.tree._utils'],
                 hookspath=[],
                 runtime_hooks=[],
                 excludes=[],
                 win_no_prefer_redirects=False,
                 win_private_assemblies=False,
                 cipher=block_cipher)
    pyz = PYZ(a.pure, a.zipped_data,
                 cipher=block_cipher)
    exe = EXE(pyz,
              a.scripts,
              exclude_binaries=True,
              name='ExeFileName',             
              debug=False,
              strip=False,
              upx=False,
              console=False )
    coll = COLLECT(exe,
                   a.binaries,
                   a.zipfiles,
                   a.datas,
                   strip=False,
                   upx=True,
                   name='ApplicationName')
    

提交回复
热议问题