Этот вопрос задавался много раз, поскольку я видел много сообщений на эту тему. Но, кажется, ничего не работает для меня. Я использую Qt версии 5.5.1 с QMake версии 3.0 в Ubuntu 16.04.
Это вызывает ошибку во время выполнения, как
QSqlDatabase: unknown driver not loaded
QSqlDatabase: available drivers: QSQLITE QPSQL QPSQL7
"\uFFFF:Driver not loaded Driver not loaded"
В качестве вышеуказанных доступных драйверов у меня есть .so файлы в папке «sqldriver» в папке плагинов Qt. На моем исполняемом файле, а также на файлах библиотеки все в порядке, и зависимости найдены. Я использую Postgresql 9.5, и я попытался передать в \bin
а также \lib
пути Postgresql к Qt через переменные Run Environment. Установка моего QT_DEBUG_PLUGINS = 1 дал
Debug: 14.05.2018 09:51:55.831 QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers" ...
Debug: 14.05.2018 09:51:55.831 QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers/libqsqlite.so"Warning: 14.05.2018 09:51:55.831 Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers/libqsqlite.so, metadata=
{
"IID": "org.qt-project.Qt.QSqlDriverFactoryInterface",
"MetaData": {
"Keys": [
"QSQLITE"]
},
"className": "QSQLiteDriverPlugin",
"debug": false,
"version": 328961
}Debug: 14.05.2018 09:51:55.831 Got keys from plugin meta data ("QSQLITE")
Debug: 14.05.2018 09:51:55.831 QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers/libqsqlpsql.so"Warning: 14.05.2018 09:51:55.831 Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers/libqsqlpsql.so, metadata=
{
"IID": "org.qt-project.Qt.QSqlDriverFactoryInterface",
"MetaData": {
"Keys": [
"QPSQL7",
"QPSQL"]
},
"className": "QPSQLDriverPlugin",
"debug": false,
"version": 328961
}
который выглядит хорошо. Кто-нибудь с идеей, что может быть не так? Спасибо
Задача ещё не решена.
Других решений пока нет …