FireBird 2.1 на Qt 4.5.2

Признаюсь повозился я….

Моей целью было прикрутить FireBird к Qt. Для поддержки FireBird нам нужен SQL драйвер QIBASE, но его нужно скомпилировать…

Когда я взялся за это оказалось, что у меня даже не установлена переменная среды $QTDIR. Выставил все переменные, прописал все что нужно в $PATH, и все равно ничего не получалось…

Даже скачал интерпретатор Perl, что бы воспользоваться connfigure. Но с ним у меня тоже нечего не вышло. В конце концов скомпилировал так:

cd $QTDIR/src/plugins/sqldrivers/ibase
qmake -o Makefile «INCLUDEPATH+=C:/progra~1/Firebird/Firebird_2_1/include»
/ «LIBS+=C:\progra~1\Firebird\Firebird_2_1\lib\fbclient_ms.lib» ibase.pro
mingw32-make.exe

Но на этом приключения не закончились. Долго ломал голову, что нужно сделать дальше. В конце концов мне помогли, оказывается нужно было сделать не сложную операцию…

cd $QTDIR/src/plugins/sqldrivers/ibase/debug
copy qsqlibased4.dll $QTDIR/plugins/sqldrivers
copy libqsqlibased4.a $QTDIR/plugins/sqldrivers

Ну а после я вздохнул спокойно. В проекте строчки

QSqlDatabase db = QSqlDatabase::addDatabase(«QIBASE»);
db.setDatabaseName(«TEST.FDB»);
db.open();

больше не выдают ошибки. Вот так…) Буду дальше баловаться. Пока только разобрался с выводом таблиц, но все еще впереди. Главное потом будет не забыть положить вместе с релизом нужные библиотеки.

Потихоньку познается мир Qt. Это обещает быть интересным.

Вообще первые впечатления от Qt очень положительные. Эти библиотеки мне понравились куда больше чем VCL, которым я пользовался раньше.

Я вообще решил навсегда забыть о Delphi и о всем, что с ним связанно. Проблема только в том, что HistMQ написан как раз на нем… Может быть когда-нибудь перепишу эту программу заново, ей во всяком случае это не повредит. Удачи мне..

P.S. Завел себе  новый ЖЖ —

FireBird 2.1 на Qt 4.5.2: 3 комментария

  1. Давно приглядываюсь к QT4. Банальный вопрос, с чего начать? Что скачать? Есть ли что на русском языке? Большая просьба ответить на мыло.

  2. Боюсь что задам дурацкий вопрос но почему нельзя использовать IBPP — вроде он больше возможностей дает, вместо стандартного модуля qtsql. Я как бы только начал изучать qt, да и c++ тоже — по этому много не знаю. Заранее спасибо за ответ.

  3. Так у QtSql все функции с типами Qt: QString, QVariant и т. д.
    Вообще проще намного.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *