Python Pyinstaller失败,因为在Windows上找不到pyconfig.h
我试图使用PyInstaller从Python脚本创建可执行文件,但出现以下错误:Python Pyinstaller失败,因为在Windows上找不到pyconfig.h,python,python-3.x,pandas,pyinstaller,Python,Python 3.x,Pandas,Pyinstaller,我试图使用PyInstaller从Python脚本创建可执行文件,但出现以下错误: 30391 INFO: Loading module hook "hook-distutils.py"... Unable to find "\AppData\Local\Programs\Thonny\Include\pyconfig.h" when adding binary and data files. 我只能在Linux上找到有这个问题的人的实例,但我在Windows上。我尝试将一个名为pyconf
30391 INFO: Loading module hook "hook-distutils.py"...
Unable to find "\AppData\Local\Programs\Thonny\Include\pyconfig.h" when
adding binary and data files.
我只能在Linux上找到有这个问题的人的实例,但我在Windows上。我尝试将一个名为pyconfig.h的空文件添加到给定的文件路径。这允许PyInstaller完成,但生成的.exe
文件只打印一些文本并立即关闭控制台窗口
我成功地从另一个脚本创建了一个可执行文件,该脚本使用除pandas之外的所有相同包,因此我认为这可能是问题所在
我正在Thonny上通过系统外壳运行PyInstaller。我的操作系统是Windows 10,Python版本是3.6.4。好的,所以我自己解决了这个问题。事实证明,这是几个错误的组合 创建一个空的
pyconfig.h
文件确实解决了最初的问题
从命令行运行exe可以让我看到实际问题是什么。原来它是熊猫模块中丢失的隐藏导入
我还忘了包括我的数据文件和Chrome驱动程序。在编辑pyinstaller规范文件时,所有这些问题都已修复:
a = Analysis(['script.py'],
binaries=[('chromedriver.exe','.')],
datas=[('data/datafile.xlsx','data')],
hiddenimports=['pandas._libs.tslibs.timedeltas'],
...)
pyconfig.h
是python-dev
包的一部分。安装pythondev
也可以解决您的问题
查看此问题以了解有关python开发的更多信息:我所做的是从已安装的python中拉出一个类似的pyconfig.h文件。[不是最佳做法…]