【问题标题】:RuntimeError: Cannot find the MXNet libraryRuntimeError: 找不到 MXNet 库
【发布时间】:2019-07-19 11:37:12
【问题描述】:

我想为我使用 mxnet 和 pyinstaller 的代码创建可执行文件。

我收到了这个错误

File "mxnet/libinfo.py", line 74, in find_lib_path
RuntimeError: Cannot find the MXNet library.
List of candidates:
/home/rit/test/exe/dist/test/libmxnet.so
/home/rit/test/exe/dist/test/libmxnet.so
/home/rit/test/exe/dist/test/mxnet/libmxnet.so
/home/rit/test/exe/dist/test/mxnet/../../lib/libmxnet.so
/home/rit/test/exe/dist/test/mxnet/../../build/libmxnet.so

虽然规范文件添加了 libmxnet.so,但给了我 PyInstallerImportError

通过 pip 卸载 mxnet 并将 python3.5/dist-packages/mxnet 复制到我的项目面临同样的问题。

File "PyInstaller/loader/pyiboot01_bootstrap.py", line 151, in __init__
__main__.PyInstallerImportError: Failed to load dynlib/dll '/home/rit/test/exe/dist/test/libmxnet.so'. Most probably this dynlib/dll was not found when the application was frozen.

现在什么是 dynlib/dll?如何解决这个错误?

谢谢

【问题讨论】:

    标签: python-3.x pyinstaller mxnet


    【解决方案1】:

    MXNet 需要在冻结时提供外部二进制文件。您可以使用add-data 标志将 libmxnet 文件添加到您的可执行文件中:

    pyinstaller -F --add-data="<python_path>/lib/python3.7/site-packages/mxnet/*.so*:./mxnet" script.py 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 2021-12-02
      • 2019-03-29
      • 1970-01-01
      相关资源
      最近更新 更多