【问题标题】:Matlab error: Not find Qt plataform plugin 'windows'Matlab 错误:找不到 Qt 平台插件“windows”
【发布时间】:2020-07-29 23:55:30
【问题描述】:

我在 Matlab 中运行 python 函数,运行时出现错误:

此应用程序无法启动,因为它无法找到或加载 Qt 平台插件 'windows' in '' '' ,可用插件有: 最小的屏幕外,窗口。重新安装应用程序可能会解决此问题 问题。

我已经按照video 中的步骤将平台文件夹复制到 pyqt 工具,并在此post 添加到环境路径。 如果我在 python 中运行我的代码,它工作正常,似乎 Matlab 没有找到 Qt 平台插件“Windows” 有人可以帮帮我吗?

【问题讨论】:

    标签: python matlab qt pyqt5


    【解决方案1】:

    这是部署 Qt 应用程序的问题。根据您使用的平台,您可以找到用于部署的工具,它位于 Qt 目录中。例如,在我的装有 Windows 的 PC 上,这是:

    c:\Qt\5.15.0\mingw81_64\bin\windeployqt.exe

    你可以这样调用这个工具:

    windeployqt <path-to-app-binary>
    //  OR
    windeployqt --qmldir  <path-to-app-qml-files>  <path-to-app-binary>
    

    还有很多其他选项,例如--debug--release 等。要查看所有选项,请致电windeployqt

    在其他平台上可能是linuxdeployqtmacdeployqt,也可能是pyqtdeploy

    调用此工具后,它会将所有必需的子模块复制到(附近)您的应用程序,因此它会找到所需的所有子模块。

    【讨论】:

    • 可能你需要pyqtdeploy,见pypi.org/project/pyqtdeploy
    • 我找到了我有这个 windeployqt 的地方,现在呢?我该做什么?我在 C:\ProgramData\Anaconda3\envs\SimPEG1401\Library\bin\windeployqt.exe
    • 我假设您应该调用部署工具指定 Qt 应用程序的路径
    • 我打电话给哪一个?调试?
    • 取决于应用的构建类型。您也可以尝试不指定它。
    【解决方案2】:

    在我的 Windows 系统上,我的体验与 Python 函数本机运行但不能通过 MATLAB 运行的体验相同。问题是缺少或不兼容的 dll(不是 exe)文件。为了解决这个问题,我将 conda 环境中的确切 dll 复制到 MATLAB \bin\win64 文件夹中。也就是我复制了这五个dll

    • qdirect2d.dll
    • qminimal.dll
    • qoffscreen.dll
    • qwebgl.dll
    • qwindows.dll

    来自我的 conda 环境的 \Library\plugins\platforms 文件夹

    C:\Users\username\AppData\Local\Continuum\envs\myenv\Library\plugins\platforms

    进入 MATLAB 文件夹

    C:\Program Files\MATLAB\R2020b\bin\win64\platforms

    在进行复制时,我覆盖了 MATLAB 文件夹中已经存在的三个 dll。

    【讨论】:

      猜你喜欢
      • 2022-11-04
      • 1970-01-01
      • 2020-10-05
      • 1970-01-01
      • 1970-01-01
      • 2018-06-08
      • 2019-10-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多