问题描述
我正在使用Window 10 64bit创建exe。但是,exe出现以下错误: 文件“ rtree \ core.py”,第126行,位于 OSError:找不到或加载spatialindex_c-64.dll [23324]无法执行脚本microwave_python_code
- -add-data = C:\ path \ to \ spatialindex_c-64.dll;。到我的构建命令
- pip卸载rtree,然后使用“ Rtree-0.9.4-cp37-none-win_amd64.whl”进行安装
- 安装“ spatialindex-src-1.9.3.tar.gz”
- 将“ spatialindex_c-64.dll”复制到rtee网站包文件夹中
- 将“ spatialindex_c-64.dll”复制到exe文件夹中
任何人都可以通过以上操作创建可运行的exe吗? 尝试上述解决方案后,我仍然面临问题。我还能做些什么来使我的exe正常工作?
解决方法
我遇到了同样的问题,我使用了http://pyinstaller.47505.x6.nabble.com/OSError-while-running-exe-td2997.html上的最终答案来解决了这个问题。
要解决此问题,请找到在构建.exe时创建的.specs
文件,并在其中添加两件事:
from PyInstaller.utils.hooks import collect_dynamic_libs
...
a = Analysis(...
binaries=collect_dynamic_libs("rtree"),...)
这将找到.dll
使用的rtree
文件。
之后,您可以使用命令pyinstaller your_script_name.spec
重建它。