PyInstaller找不到pyqt4插件目录

时间:2016-03-01 05:30:27

标签: pyqt pyinstaller

我有一个PyQt应用程序,我试图使用PyInstaller 3.1编译成一个exe。它确实编译成了一个exe,然而,GUI没有在启动时显示(单击exe)。其中一个编译消息是:

  

ImportError:没有名为site 5576的模块错误:找不到PyQt4插件   目录5576警告:未找到隐藏的导入'PyQT4._qt'   (可能是旧钩子)

我认为这就是用户界面无法显示的原因。我已经在Analysis对象的pathex属性中添加了PyQt4的所有路径都无济于事。以下是我的spec文件:

# -*- mode: python -*-

block_cipher = None


a = Analysis(['main32.py'],
             pathex=['C:/OSGeo4W/apps/Python27/Lib/site-packages/PyQt4','./src'],
             binaries=None,
             datas=None,
             hiddenimports=[],
             hookspath=None,
             runtime_hooks=None,
             excludes=None,
             win_no_prefer_redirects=None,
             win_private_assemblies=None,
             cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          name='MyExe',
          debug=False,
          strip=None,
          upx=True,
          console=False )

任何想法接下来要尝试什么?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的错误,我通过这样做解决了问题:

  1. 在CMD上卸载PyQt4(“pip uninstall PyQt4”);

  2. 删除“... PythonX \ Lib \ site-packages \”;

  3. 中的“PyQt4”文件夹
  4. 从此网站下载“.whl”软件包:Python Expansion Packages您需要下载正确的WHL ,查看文件的名称,因为我正在使用Python3 .5,文件“PyQt4-4.11.4- cp35 -none-win32.whl”为我工作!

  5. 再次安装,在文件位置打开CMD并输入: “pip install PyQt4-4.11.4-cp35-none-win32.whl”。当然,您可以输入文件名。

  6.   

    注意:只有通过卸载,我才能编译我的脚本。但是,如果你真的使用PyQt4代码,你将需要再次安装它。   如果它也适合你,请竖起大拇指! ;)