Python PyInstaller的问题
我想使用PyInstaller将应用程序捆绑到可执行文件中。我遇到问题是因为Python PyInstaller的问题,python,pyinstaller,geopandas,Python,Pyinstaller,Geopandas,我想使用PyInstaller将应用程序捆绑到可执行文件中。我遇到问题是因为geopandas库。当前我的脚本throwaway.py仅包含以下导入: import geopandas 但是,运行pyinstaller throwaway.py不起作用。它似乎与仅导入的matplotlibPyQt5有关 pyinstaller的日志太长,无法包含在此处,但下面显示了遇到的最后一个异常: Exception: Cannot find existing PyQt5 plugi
geopandas
库。当前我的脚本throwaway.py
仅包含以下导入:
import geopandas
但是,运行pyinstaller throwaway.py
不起作用。它似乎与仅导入的matplotlib
PyQt5有关
pyinstaller
的日志太长,无法包含在此处,但下面显示了遇到的最后一个异常:
Exception:
Cannot find existing PyQt5 plugin directories
Paths checked: c:/qt/qt_1489878162099/_b_env/Library/plugins
我不知道如何处理这个问题,但有几个概念上的选择:
- 找到排除matplotlib的geopandas导入的方法。我没有使用matplotlib,所以我不需要首先打包它
- 找出出现此问题的原因并预防/修复它
有人能帮忙吗?非常感谢 这个
pyinstaller-y-d--clean-throwaway.py
适合我
还有,检查一下这个
有一个递归限制的问题,声明。
试着这样增加它:
import sys
sys.setrecursionlimit(5000)
我通过下载
pyinstaller
的开发版本解决了这个问题,如下所示:
pip安装https://github.com/pyinstaller/pyinstaller/archive/develop.zip
我是从你那里得到的。当前conda forge
发行版的pyinstaller
仍然不包括开发版本中包含的内容。更改之前的代码是导致问题中出现错误的原因
希望conda forge
发行版很快将其纳入主发行版
因此,如果您遇到此问题,基本上有两种选择:
- 安装PyInstaller的开发版本并使用它
- 手动进入
并按指示修改文件~\anaconda3\Lib\site packages\PyInstaller\utils\hooks\qt.py
geopandas
doingconda update geopandas
,但仍然出现错误。我的项目需要使用Python 3.6.6
,因此我别无选择检查递归限制(在我的回答中)是否执行此作业我在导入geopandas
之前添加了setrecursionlimit
。同样的问题。对于某些人,它通过将其添加到规范文件(规范文件的开头)中,然后运行pyinstaller filename.spec来工作