Название: Вопрос по MySQL Отправлено: toggetit от Февраль 09, 2009, 15:05 Доброго времени суток!
Я собрал MySQL'ный плагин для Qt 4.4.3 OpenSource. Проверяю его наличие на программе demos\sqlbrowser - но там по прежнему sqlite и odbc, мускула нет. Как заставить Qt увидеть мой плагин. Проверил - в папке plugins\sqldrivers лежит и qsqlmysql4.dll и qsqlmysqld4.dll и те же {}.а гуру, подскажите где что проглядел? P.S. система Windows Название: Re: Вопрос по MySQL Отправлено: spirit от Февраль 09, 2009, 15:17 а путь к либам(папке bin) MySql указан?
Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 09, 2009, 15:23 Да, в переменных окружения windows.
Наткнулся на такое: Необходимо сделать configure -qt-sql-mysql -plugin-sql-mysql какие ещё варианты? Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 09, 2009, 15:26 все варианты - мыслимые и немыслимые - уже множество раз обсуждались в ветках по сборке/установке и скл.
неужели так сложно ткнуть в маленькую кнопочку "поиск" в верхней части шаблона?! Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 09, 2009, 15:31 История стара как мир - "юзай поиск" =)
Я конечно же юзал))) Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 09, 2009, 15:45 ладно, ветку позже перенесу в сборку/установку.
начнём сначала: mingw/m$vc? параметры конфигурации? версия мускуля и пути к инклюдам/либам мускуля? очищался ли кэш плагинов /* в реестре */ после пересборки? Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 09, 2009, 22:49 MySQL 5.0.51a (установлен вместе с с develop-частью)
MinGW Qt 4.4.3 open source MySQL установлен в D:\DevTools\MySQL (соответственно вся требуха с ним там же), в переменных среды windows указан путь к MySQL\bin при сборе плагина использовал qmake "INCLUDEPATH+=...\path\to\MySQL\include" "LIBS+=...\MySQL\lib\opt\libmysql.lib" всё собралось без сучка без задоринки кэш плагинов не чистил - поподробней расскажите пожалуйста. Находил упоминание про чистку кеша, но не "врубился" как это делать Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 09, 2009, 23:49 попробуй дополнить src/plugins/sqldrivers/mysql/mysql.pro следующими строками:
Код:
затем в реестре грохнуть ветку HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 10, 2009, 00:13 я так и собирал...
ветку удалил. Ситуация на текущий момент неоднозначная: программа \demos\sqlbrowser так и не видит мой плагин, НО теперь нормально собирается самописная прога, в которой задействован драйвер QMYSQL... т.о. либо проблемы с sqlbrowser (его я естественно тоже пересобирал) а моя прога нормально подхватила плагин, либо я ваще ничего не понимаю))) точнее я написал кусок кода, где пытаюсь подключить QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); - собирается, соответственно он находит плагин UPD: Мой самописный код присоеденился к серверу MySQL - следовательно драйвер работает -> проблема с sqlbrowser'ом Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 10, 2009, 01:09 Код: QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 10, 2009, 01:26 все пути стандартны.
т.е. то, что собирается, ещё не значит что плагин работает? Но моё приложение присоеденилось к серверу MySQL - я увидел это в консоли MySQL... Следовательно всё работает, до этого (сбора плагина) приложение вроде бы не соединялось с сервером, выскакивала ошибка (в коде стандартная проверка на коннект) Если оно может собираться и работать без сборки плагина, зачем тогда вообще этот плагин? Вы что-то меня ещё больше запутали))) Разъясните пожалуйста. Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 10, 2009, 02:33 не представляю как может одно приложение подхватывать плагин, а другое - нет, если с путями всё в порядке. во-всяком случае, у меня такого не бывало. были проблемы с 5.0.51а, но тогда вообще драйвер не подхватывался - пришлось откатываться на 5.0.51. сейчас пользую 5.1.31 (5.1.х) и в целом доволен - проблем с драйверами QtSql давно не наблюдал.
попробуй скопировать libmysql.dll в QTDIR/bin и затем запустить sqlbrowser - вдруг ?)... зы. кстати, сборка релиз или дэбаг? Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 10, 2009, 11:38 так, после того как скопировал dll'ку в Qt/bin - sqlbrowser увидел QMYSQL, но при попытки соединения с базой - ошибка "Driver not loaded"
релиз sqlbrowser - release =) UPD: Самописный код РАБОТАЕТ с сервером MySQL - покрайней мере принимает данные оттуда Название: Re: Вопрос по MySQL Отправлено: ритт от Февраль 10, 2009, 12:23 тогда остаётся гадание на кофейной гуще и либастрал...
мне отсюда не видно что там не так. если есть время, можно попробовать пересобрать кутэ начисто с советами из поста №8 (в этом треде) и ключиком конфигуры -plugin-sql-mysql (ещё полезно для отладки -DQT_DEBUG_SQL) Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 12, 2009, 23:34 В общем - всё работает в моих проэктах, но SQLbrowser ещё держится))))
P.S. Константин, огромное вам спасибо за советы! Название: Re: Вопрос по MySQL Отправлено: Sergey B. от Февраль 13, 2009, 23:22 libmysql.dll в Windows\System32
Название: Re: Вопрос по MySQL Отправлено: toggetit от Февраль 15, 2009, 13:53 Большое спасибо - помогло! =)
|