Clever-1945
12/1/2017 - 6:15 AM

Сборка драйвера Firebird #Qt

Сборка драйвера Firebird #Qt

1. Сперва скачиваем архив самого сервера Firebird с официального сайта https://www.firebirdsql.org/en/firebird-2-5/
2. Распаковываем его ну например в D:/Firebird
3. Предположим что наш QT установлен в папку d:\Qt\5.9.2\ иустановлен вместе с исходнками
    Нам драйвер надособирать именно изисходников
4. Бывает такие что при сборке не хватает файла qtsqldrivers-config.pri на самом деле он есть но под другим именем
    Надо сделать копию файла Надо сделать копию файла 
    d:\Qt\5.9.2\5.9.2\Src\qtbase\src\plugins\sqldrivers\configure.pri 
    и переименовать эту копию в 
    d:\Qt\5.9.2\5.9.2\Src\qtbase\src\plugins\qtsqldrivers-config.pri
5. В QtCreator открываем проэкт  d:\Qt\5.9.2\5.9.2\Src\qtbase\src\plugins\sqldrivers\ibase\ibase.pro
6. Переделываем файл проэкта втакой вид: 
TARGET = qsqlibase

HEADERS += $$PWD/qsql_ibase_p.hSOURCES += $$PWD/qsql_ibase.cpp $$PWD/main.cpp# FIXME: ignores libfb (unix)/fbclient (win32) - but that's for the test anyway#QMAKE_USE += ibasewin32:INCLUDEPATH += d:\Firebird\includewin32:LIBS += -lfbclient_mswin32:LIBS += -Ld:\Firebird\libunix:!contains( LIBS, .*gds.* ):!contains( LIBS, .*libfb.* ):LIBS *=-lgdswin32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) {!win32-borland:LIBS *= -lgds32_mswin32-borland:LIBS += gds32.lib}OTHER_FILES += ibase.jsonPLUGIN_CLASS_NAME = QIBaseDriverPlugininclude(../qsqldriverbase.pri) 7. Теперь можно собирать. После успешной сборки следует не забыть что надо поместить файлы dll в папку d:\Qt\5.9.2\5.9.2\mingw53_32\plugins\sqldrivers\Все lib файлы в папку d:\Qt\5.9.2\5.9.2\mingw53_32\lib\Все *.a файлы в папку d:\Qt\5.9.2\5.9.2\mingw53_32\lib\