gpt4 book ai didi

python - 如何将 pyinstaller 与隐藏导入一起用于 scipy.optimize leastsq

转载 作者:太空狗 更新时间:2023-10-29 22:15:26 25 4
gpt4 key购买 nike

我的 wxpython 应用程序使用 pyinstaller 编译得很好,直到添加了一些基于 from scipy.optimize import leastsq 语句的功能。

我该如何解决这个问题?

最佳答案

第一次在 cmd 中运行命令 pyinstaller myscript.py 时,将创建一个 myscript.spec 文件(或者您可以手动创建)。该文件允许您指定隐藏的导入,我发现(通过漫长而乏味的试错过程)以下隐藏的导入可以解决问题:

'scipy.special._ufuncs_cxx'
'scipy.linalg.cython_blas'
'scipy.linalg.cython_lapack'
'scipy.integrate'
'scipy.integrate.quadrature'
'scipy.integrate.odepack'
'scipy.integrate._odepack'
'scipy.integrate.quadpack'
'scipy.integrate._quadpack'
'scipy.integrate._ode'
'scipy.integrate.vode'
'scipy.integrate._dop'
'scipy.integrate.lsoda'

这些可能应该通过钩子(Hook)链接,但我不知道如何链接,所以这是“快速且肮脏”的方式。

现在你执行pyinstaller myscript.spec

我的完整文件看起来是这样的:

# -*- mode: python -*-
a = Analysis(['myscript.py'],
pathex=['C:\\SourceCode'],
hiddenimports=['scipy.special._ufuncs_cxx',
'scipy.linalg.cython_blas',
'scipy.linalg.cython_lapack',
'scipy.integrate',
'scipy.integrate.quadrature',
'scipy.integrate.odepack',
'scipy.integrate._odepack',
'scipy.integrate.quadpack',
'scipy.integrate._quadpack',
'scipy.integrate._ode',
'scipy.integrate.vode',
'scipy.integrate._dop',
'scipy.integrate.lsoda'],
hookspath=None,
runtime_hooks=None)
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
exclude_binaries=True,
name='myscript.exe',
debug=False,
strip=None,
upx=True,
console=True )
coll = COLLECT(exe,
a.binaries,
a.zipfiles,
a.datas,
strip=None,
upx=True,
name='myscript')

关于python - 如何将 pyinstaller 与隐藏导入一起用于 scipy.optimize leastsq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35060523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com