如何使用pyinstaller在可执行文件中包含.dll文件?

Dav*_*d P 9 python dll numpy pyinstaller

我想从我的python脚本生成一个可执行文件.为此,我使用pyinstaller.我遇到了mkl库的问题,因为我在脚本中使用了numpy.

我用这个钩子解决问题,它工作得很好.但是如果我将单个可执行文件复制到另一个目录并执行它,它就不起作用.我想我也要复制钩子.但我只想拥有一个单独的文件,我可以在其他计算机上使用而无需复制.dll's或挂钩.

我还更改了此处所述的.spec文件,并将必要的文件添加到-variable.只要在-variable 的提供目录中,它也可以工作,但是当我在没有这些的计算机上使用可执行文件时,这将无法工作.binaries.dll'sbinaries.dll's

我尝试使用该--hidden-import= FILENAME选项.这也解决了这个问题,但只是在.dll's某处提供的时候.

我正在寻找的是可以捆绑.dll's到单个可执行文件,以便我有一个独立工作的文件.

Ily*_*dov 6

当我遇到这里描述的问题时 https://github.com/ContinuumIO/anaconda-issues/issues/443 我的解决方法是

pyinstaller -F --add-data vcruntime140.dll;. myscript.py

-F- 收集到一个*.exe文件

. - exe文件中dll的目标路径

来自docs http://pyinstaller.readthedocs.io/en/stable/spec-files.html#adding-data-files