Признаюсь повозился я….
Моей целью было прикрутить 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. Завел себе новый ЖЖ —
3 ответа к “FireBird 2.1 на Qt 4.5.2”
Давно приглядываюсь к QT4. Банальный вопрос, с чего начать? Что скачать? Есть ли что на русском языке? Большая просьба ответить на мыло.
Боюсь что задам дурацкий вопрос но почему нельзя использовать IBPP — вроде он больше возможностей дает, вместо стандартного модуля qtsql. Я как бы только начал изучать qt, да и c++ тоже — по этому много не знаю. Заранее спасибо за ответ.
Так у QtSql все функции с типами Qt: QString, QVariant и т. д.
Вообще проще намного.