2015-04-29 2 views
2

Я понимаю, что это время, когда кто-то спрашивает об этом, но я все еще не могу работать с QMYSQL. Так я установил Qt-MySQL, но я все еще имеяmysql драйвер для базы данных qt fedora

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

Я скопировал /usr/lib64/qt4/plugins/sqldrivers/libqsqlmysql.so в /usr/lib64/qt5/plugins/sqldrivers/libqsqlmysql.so, но никаких изменений ...

Я также добавили QT += sql в файл .pro.

Так что же мне делать?

P.S. : Я на Fedora 21, и я использую QtCreator 3.3.2 на основе Qt 5.4.1.

P.P.S: Я также проверил, если .so были проблемы зависимостей, но нет ни:

$ ldd libqsqlmysql.so 
linux-vdso.so.1 => (0x00007fff665d1000) 
libmysqlclient.so.18 => /usr/lib64/mysql/libmysqlclient.so.18 (0x00007fcb07294000) 
libQtSql.so.4 => /lib64/libQtSql.so.4 (0x00007fcb07052000) 
libQtCore.so.4 => /lib64/libQtCore.so.4 (0x00007fcb06b63000) 
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fcb06947000) 
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fcb06638000) 
libm.so.6 => /lib64/libm.so.6 (0x00007fcb0632f000) 
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fcb06118000) 
libc.so.6 => /lib64/libc.so.6 (0x00007fcb05d5b000) 
libdl.so.2 => /lib64/libdl.so.2 (0x00007fcb05b56000) 
libz.so.1 => /lib64/libz.so.1 (0x00007fcb05940000) 
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007fcb0573e000) 
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007fcb05404000) 
librt.so.1 => /lib64/librt.so.1 (0x00007fcb051fc000) 
/lib64/ld-linux-x86-64.so.2 (0x00007fcb07aa6000) 

ответ

1

Вы не можете просто скопировать драйвер Qt4 MYSQL в Qt5. Установите его с того же места, где вы установили остальную часть Qt5. (Возможно, пакет qt5-qtbase-mysql: https://apps.fedoraproject.org/packages/qt5-qtbase-mysql).

+0

О, боже, спасибо. Я так глуп, чтобы не думать об этом. –

0

Вы должны создать драйвер mysql вручную. Единственным драйвером, который поставляется с установкой Qt по умолчанию, является драйвер Sqlite.

Следуйте инструкциям в http://doc.qt.io/qt-5.4/sql-driver.html#qmysql

0
  1. Установка mySQL connector.
  2. инструкции here

Follow libmysql.dll должен быть расположен где-то, где его можно найти в приложении. Чтобы это произошло, вы можете перечислить его в глобальной переменной PATH в параметрах Control Panel/System/Advanced System Settings/Environment или поместить libmysql.dll в ту же папку, что и Qt-dll в вашем QtDirectory/bin.

Смежные вопросы