Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Qt+MYSQL. Не обнаруживает драйвер  (Прочитано 10812 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AlexM_Dev

  • Автор темы
  • Новичок
  • *
  • Сообщений: 32
    • Просмотр профиля
Qt+MYSQL. Не обнаруживает драйвер
« : 05 Января 2014, 22:56:47 »
Доброго времени суток. Возникла необходимость написать простенький клиент для MySQL БД. С проблемой уже столкнулся при попытке создания обьекта подключения. Параметр перекопировал даже со строки вывода - ошибка не пропадает, в тоже время Подключение к SQLite успешно устанавливаеться, но драйвер Мускула подгружать не хочет. В про файл QT += sql добавил. Пространство имен подтянул. К Qt подтянул clang. На windows с MinGW все работает нормально.

Может кто сталкивался с таким? Какие варианты решения?

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

Вывод программы:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3473
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #1 : 05 Января 2014, 23:21:55 »
ну так поставьте библиотеку драйвера MySql из репозитория
sudo apt-get install libqt4-sql-mysql

как то так, хотя для qt 5 версии вероятнее по другому будет называться
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн AlexM_Dev

  • Автор темы
  • Новичок
  • *
  • Сообщений: 32
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #2 : 05 Января 2014, 23:24:32 »
Установлено.

Пользователь решил продолжить мысль 05 Января 2014, 23:28:17:
Только что дотянул g++. И пересоздал проект, все пошло хорошо. Спасибо за помощь.

offtop: последняя библиотека Qt - Qt Lib 4.8. До версии 5+ перекочевал только Qt Creator.
« Последнее редактирование: 05 Января 2014, 23:31:09 от AlexM_Dev »

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3473
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #3 : 06 Января 2014, 08:52:47 »
AlexM_Dev,
ну это в вашей Ubuntu так, у меня в ArchLinux уже давно Qt5 в репозиториях висит....
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн AlexM_Dev

  • Автор темы
  • Новичок
  • *
  • Сообщений: 32
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #4 : 06 Января 2014, 22:41:53 »
Поставил среду с run файла ( c офф. сайта Qt качал ) - проблема вернулась. Не знаю от чего зависит - файл библиотеки есть как в /usr/lib/... так и в папке плагинов. На всякий случай файл библиотеки скопировал в директорию с проектом - результата нет. В какую сторону смотреть? ПОтратил вчера весь вечер на переустановки среды и системы и на поиск решения в гугл.

Мое возвращение на Ubuntu совсем уж неудачно прошло. Поставил 12.04 - драйвер встроенной графики Интел уже не поддерживаеться, обновился на 13.10 - для нее драйвер еще не готов. >:(

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3473
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #5 : 06 Января 2014, 23:17:19 »
суть в том что если ставите скомпилированную версию которую выкачали с сайта то библиотеки драйверов баз данных надо ложить в плагины.... тут все очень сильно зависит от места куда ставили какие права и т.д.
как собирать почитай тут: http://ru.opensuse.org/QT_%D0%B8_%D0%91%D0%B0%D0%B7%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85
запусти любую программу и в ней посмотри что выдаст код:
Код: (С++) [Выделить]
qDebug() << QSqlDatabase::drivers();


у меня вот что выводит:
("QIBASE", "QSQLITE", "QMYSQL", "QMYSQL3", "QODBC", "QODBC3", "QPSQL", "QPSQL7")
« Последнее редактирование: 06 Января 2014, 23:18:56 от Чистый »
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн AlexM_Dev

  • Автор темы
  • Новичок
  • *
  • Сообщений: 32
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #6 : 07 Января 2014, 02:44:30 »
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7

Пользователь решил продолжить мысль 07 Января 2014, 03:41:46:
Может для работы библиотеки не хватает определенных зависимостей? Как можно проверить?

Пользователь решил продолжить мысль 07 Января 2014, 03:58:52:
libmysqlclient_r.so.16 => not found

ВОт чего не хватает.

Пользователь решил продолжить мысль 07 Января 2014, 04:06:58:
sudo ln -s /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18 /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.16
Починил.
« Последнее редактирование: 07 Января 2014, 04:06:58 от AlexM_Dev »

Оффлайн Сергей Чистяков

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: Qt+MYSQL. Не обнаруживает драйвер
« Ответ #7 : 19 Октября 2014, 19:01:47 »
ну так поставьте библиотеку драйвера MySql из репозитория
sudo apt-get install libqt4-sql-mysql

как то так, хотя для qt 5 версии вероятнее по другому будет называться

Спасибо. Тоже была подобная проблема. Уже нет :)

 

Страница сгенерирована за 0.065 секунд. Запросов: 25.