Название: QT + MySQL Отправлено: CJ1 от Май 29, 2012, 20:31 Люди, пожалуйста помогите мне,
Проблема как у всех новичков. Делаю простой код соединения с MySQL говорит драйвер не установлен. Перерыв кучу форумов , понял что нуно скачать какуюто ren....exe и откомпилить чтото с нее. Но не пойму где скачать. Вобщем нашел готовые 4 файла, 2 dll И 2 lib. Теперь куда их поставить и что с ними делать нипойму, а там где я качал (на какомто форуме) все говорили что работает, я тупо нипойму куда их закинуть, помогите мне, названия файлов и все такое не помню потомучто все на компе на работе, очень прошу помоч Файлы называются так libqsqlmysqld4.a and qsqlmysqld4.dll. и libqsqlmysql4.a and qsqlmysql4.dll. И кстати, вот такой папки у c:\QtSDK\Desktop\Qt\4.7.3\mingw\plugins\sqldriv ers\ меня тое нету у меня тупо c:\QtSDK\Desktop\Qt\4.7.3\vs2008 Название: Re: QT + MySQL Отправлено: Serr500 от Май 29, 2012, 22:15 Что ещё за ren? В документации достаточно понятно описано как компилить плагин: http://doc-snapshot.qt-project.org/4.8/sql-driver.html#qmysql (http://doc-snapshot.qt-project.org/4.8/sql-driver.html#qmysql), см. "How to Build the QMYSQL Plugin on Windows". Скачать с офсайта движок, установить, выдрать инклюды и либы, скомпилировать плагин. Не забудьте при распространении приложения положить ему в папку с бинарником требуемые файлы от MySQL.
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 07:08 Из всего этого я так и непойму как его скомпилировать??????? Да и нафиг мне его компелировать если он у меня уе скомпелированный, я нипойму куда его засунуть надо!!!!!!!!!!!!!
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 07:56 Неужели там так непонятно написано? По-моему, всё очевидно. А то, что он уже есть скомпилированный, ни о чём не говорит. Судя по первому сообщению, плагин скомпилирован mingw, а у вас - vs2008. Работать не будет. И вообще, если хотите проблем - используйте готовые "левые" плагины. Но не удивляйтесь, если не будет работать или сваливаться в ошибки.
P.S. Не знаю, куда засунуть. У вас QtSDK, а я его сильно недолюбливаю, пользуюсь отдельными сборками. Поэтому о путях ничего не могу сказать. Может быть, подскажет кто-то, у кого есть QtSDK. Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 08:26 Вот инструкция по компиляции даже без установки MySQL. Для QtSDK пути, вероятно, нужно будет немного подправить.
Идём на страницу http://www.mysql.com/downloads/mysql/ (http://www.mysql.com/downloads/mysql/) и скачиваем zip-архив с откомпилированной под требуемую архитектуру версией MySQL. К примеру, пусть это будет Windows (x86, 32-bit), ZIP Archive. Из архива в отдельный каталог (например, C:\MySQL) распаковываем папки include и libs. Переходим в каталог %QTDIR%\src\plugins\sqldrivers\mysql\ и запускаем там командную оболочку. В ней запускаем qmake: Код: qmake "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MYSQL\lib\opt\libmysql.lib" Код: nmake all Готово. Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 08:45 Говорю еще раз, у меня не существует таких файликов как nmake
Когда делаю C:\Windows\system32>qmake "INCLUDEPATH+=C:\Program Files\MySQL\MySQL Server 5.5\ include" "LIBS+=C:\Program Files\MySQL\MySQL Server 5.5\lib" WARNING: (internal):1: Unescaped backslashes are deprecated. c:\Windows\system32\graphics.pro:1: Parse Error (';----------------------------- -----------------------------------------------') Error processing project file: C:/Windows/system32/graphics.pro Вот эта тупая ошибка потом C:\Windows\system32>nmake all "nmake" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. C:\Windows\system32>nmake debug-install "nmake" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. C:\Windows\system32>nmake release-install "nmake" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. C:\Windows\system32> Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 08:53 Я немогу скомпилировать, у меня куча ошибок
У меня есть файлы libqsqlmysql4.a libqsqlmysqld4.a qsqlmysql4.dll qsqlmysqld4.dll Куда их засунуть чтоб он наконец увидел? Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 09:01 Он в отладчике пишет вот так
QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE Вы можете объяснить как заставить его написать вот так QSqlDatabase: available drivers: QSQLITE QMYSQL Откуда он это берет вообще? Вот эти гребаные файлы libqsqlmysql4.a libqsqlmysqld4.a qsqlmysql4.dll qsqlmysqld4.dll лижат тут C:\QtSDK\Desktop\Qt\4.7.4\msvc2008\plugins\sqldrivers Что еще ему надо?????????????? Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 09:04 Или скинте мне все эти nmake и все что нужно пожалуйста
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 09:13 Говорю еще раз, у меня не существует таких файликов как nmake Ну знаете ли... Вначале вам нужно научиться работать с командной строкой MSVC... "Нет nmake" и при этом Qt под vc2008... Запускайте командную строку через ярлык в меню. Как называется не помню, у меня нет сейчас под рукой микрософтовских компиляторов. Что-то типа "MS VC Command Prompt".C:\Windows\system32> Команду CD для чего придумали? Каталог нужно сменить на тот, где лежит файл mysql.pro.Он в отладчике пишет вот так Ещё раз говорю: СКОМПИЛИРОВАНЫ ДРУГИМ КОМПИЛЯТОРОМ!!!! ОН ИХ НЕ УВИДИТ!!!! НАДО КОМПИЛИРОВАТЬ САМОМУ!!!QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE Вы можете объяснить как заставить его написать вот так QSqlDatabase: available drivers: QSQLITE QMYSQL Откуда он это берет вообще? Вот эти гребаные файлы libqsqlmysql4.a libqsqlmysqld4.a qsqlmysql4.dll qsqlmysqld4.dll лижат тут C:\QtSDK\Desktop\Qt\4.7.4\msvc2008\plugins\sqldrivers Что еще ему надо?????????????? Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 09:15 Где вы их вообще взяли? Дайте ссылку.
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 09:48 Вот что пишет мне командная строка MSVS2008
Код
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 09:49 Djn dfv ccskrf ult z b[ dpzk
http://qt.shamangrad.net/lib/exe/fetch.php?media=drivers:mysql.rar Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 09:57 C:\Program Files\Microsoft Visual Studio 9.0\VC> Вы вообще читаете мои ответы? СМЕНИТЕ РАБОЧИЙ КАТАЛОГ на тот, в котором лежит mysql.pro используя команду cd. В приглашении командной строки должен быть именно он.Посмотрел я скомпиленные либы. Как я и предполагал, они собраны с использованием mingw. В Qt с msvc2008 они работать не будут. Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:12 Теперь на пальцах
Открыл я Visual Studio 2008 Command Prompt Дальше мне нужно перейти туда где есть mysql.pro Но его не существует! Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 11:15 Тогда надо в программе обслуживания QtSDK выбрать для установки Qt Sources.
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:22 Это удалить Qt и заново поставить?
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 11:27 Нет. Там где-то был выбор компонентов для установки. Вызвать эту программку и добавить для установки исходники.
P.S. Нет у меня QtSDK, точно сказать как называется не могу. Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:33 Вобщем нашел! И почти получилось!
Но при компиляции с помощью QT Creator выдает 22 предупреждения и одну ошибку C:\QtSDK\Desktop\Qt\4.7.4\msvc2008\plugins\sqldrivers\release\moc_qsql_mysql.cpp:44: ошибка: C2491: QMYSQLDriver::staticMetaObject: ®ЇаҐ¤Ґ«ҐЁҐ dllimport бв вЁзҐбЄЁҐ ¤ лҐ-з«Ґ Ґ а §аҐиҐ® Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:47 Может кто готовые скинет?
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:50 За что разработчики QT так наказывают?
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 11:57 В папки C:\QtSDK\QtSources\4.8.1\src\sql\drivers\mysql
такие файлы qsql_mysql.cpp qsql_mysql.h qsql_mysql.pri Где взять mysql.pro???? Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 12:27 C:\QtSDK\QtSources\4.8.1\src\plugins\sqldrivers\mysql
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 12:31 Но при компиляции с помощью QT Creator выдает 22 предупреждения и одну ошибку Не надо Creator'ом компилировать. Сделайте через командную строку.Может кто готовые скинет? Я уж точно не скину. Давно уже перешёл на Qt 4.8.2. Да и микрософтовский компилятор использую не ниже чем 2010-й версии. А специально для этого разворачивать студию и старую версию Qt, честно говоря, лень.Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 12:32 Теперь дает ошибку :-1: ошибка: LNK1104: не удается открыть файл ''C:\Program.obj''
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 12:35 Теперь дает ошибку :-1: ошибка: LNK1104: не удается открыть файл ''C:\Program.obj'' Вот этого не знаю. Где-то ошибка в проекте. Из командной строки компилировалось или Creator'ом?Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 12:44 наконецто!!!!!!!!!!!!!!!!!!!! Получилосььььььььььььь!!!!!!! Спасибо всем! главное было найти файл Mysql.pro и все заработало!!!!!!!!!!!!!! И релизная и debug версия! :) :) :) :) :) :)
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 12:58 Вот, может кому понадобятся эти драйвера
И кстати скомпилировал через QT Creator Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 14:42 Еще одна проблема, на другом компе опять говорит драйвер не установлен, как указать чтоб из корневого каталога брал драйвер?
Название: Re: QT + MySQL Отправлено: Serr500 от Май 30, 2012, 14:58 Не надо из корневого. Надо из каталога, в котором расположен бинарник. В нём создаём каталог sqldrivers и кидаем туда скомпилированный плагин. В папку с бинарником ещё кладём libmysql.dll.
Название: Re: QT + MySQL Отправлено: CJ1 от Май 30, 2012, 15:03 Точно! Спасибо!
Название: Re: QT + MySQL Отправлено: CJ1 от Август 28, 2012, 13:07 Люди, у меня новая проблема, на новый комп установил тот же qt, но теперь нет папки QtSources
Название: Re: QT + MySQL Отправлено: Serr500 от Август 28, 2012, 13:40 QtSDK? Исходники ставятся отдельно, причём при начале установки их даже в списке нет. Нужно потом запускать менеджер.
Название: Re: QT + MySQL Отправлено: CJ1 от Август 28, 2012, 13:43 Что нужно сделать?
Запустил SDKMaintenanceTool Там какую опцию выбрать? Название: Re: QT + MySQL Отправлено: Serr500 от Август 28, 2012, 14:24 Я не помню как она точно называется, а на рабочем компе SDK нет. Что-то типа Qt Sources 4.8.1.
Название: Re: QT + MySQL Отправлено: CJ1 от Август 28, 2012, 14:52 Нашел, а как вручную откомпилировать mysql????
Название: Re: QT + MySQL Отправлено: CJ1 от Август 28, 2012, 15:22 Все сделал! :)
|