I'm a newbie at c++ linking and databases, so may be i'm asking a really stupid question. Anyway, i'm trying to access to firebird database using Qt5 for Windows. I've checked google and found 2 ways of doing so:
- build ibase driver from Qt source;
- use firebird through ODBC driver.
Software versions
I'm using latest version of Qt: 5.1.1. Firebird 2.5 is working ok: i've create a test_base and test user admin. Administartion of test_base i've done through FlameRobin.
Building
I've downloaded qt5.1.1 source and unpacked it in c:/devtools/qt5.1.1-src. Since Qt4.7-4.8 folder and project structure has been changed so old FAQs cannot be applied here. So i tried to build sql.pro from qtbase\src\sql folder with 2 lines added:
INCLUDEPATH+= C:/devtools/firebird/firebird_2_5/include
LIBS+= C:/devtools/firebird/firebird_2_5/lib/fbclient_ms.lib
And i've added C:/devtools/firebird/firebird_2_5/lib/ and C:/devtools/firebird/firebird_2_5/include in system PATH. Compilation is done without any error and i get a qt_pch.h.gch\c++ file in build dir. And i have no idea what's to do next, because i hoped to have bunch of .a and .dll files or bunch of error at least.
Using ODBC driver
I've downloaded and installed firebird ODBC driver from here. Installation was successful and i created ODBC DSN source mydb in Windows ODBC manager. Test connection button from ODBC configurator says that everything is ok.
Next thing i did was opening SQL Browser example from Qt Creator. And it fails to open my ODBC base with following parameters:
- Driver: QODBC
- Database Name: mydb
- Username: admin
- Password: admin
- Hostname: localhost
- Port: Default
And i get an error message: "[ODBC Firebird Driver] Unable to connect to data source: library 'C:\devtools\Firebird\Firebird_2_5\bin\fbclient.dll' failed to load QODBC3: Unable to connect".
I'm looking for resolving any of this two issues. Thanks in advance.
upd: i've connected firebird database through ODBC: the error was in using x64 database with x86 QODBC. Nota bene: in order to manage x86 DSN ODBC in x64 Windows 7 one must run ODBC manager from %WINDIR%\SysWOW64\odbcad32.exe NOT from Administration Panel as it explained here.
But what about building ibase from qt source?