pyinstaller QSqlDatabase:未加载 QSQLITE 驱动程序 QSqlDatabase:可用驱动程序:

pyinstaller QSqlDatabase: QSQLITE driver not loaded QSqlDatabase: available drivers:

我已经使用 pyqt5 编写了一个 GUI 应用程序,其中包含一个 QtSql 数据库 QSQLITE。该应用程序完美运行。然而,当我 运行 pyinstaller 打包我的应用程序时,应用程序 运行s 直到它必须调用 QtSQL DATABASE QSQLITE 的时候。这是我得到的错误

QSqlDatabase:未加载 QSQLITE 驱动程序 QSqlDatabase:可用的驱动程序:

如何加载驱动程序以便在 运行 pyinstaller 时包含它。

谢谢

我在 QMYSQL driver 使用 PySide 时遇到了同样的问题,我找到了解决方案。

您需要手动将驱动程序包含到 qt4_plugins/sqldrivers/ 捆绑目录中。
为此,在您的规范文件中添加:

a = Analysis(...
    binaries=[('/usr/lib/x86_64-linux-gnu/qt4/plugins/sqldrivers/libqsqlmysql.so', 'qt4_plugins/sqldrivers')],
    ...
)

这适用于 QMYSQL 驱动程序,但您只需要找到 SQLITE 驱动程序的名称(可能是 libqsqlsqlite