Evgenii Legotckoi
25 серпня 2016 р. 21:04

Qt/C++ - Урок 053. Створення драйвера IBASE SQL Qt 5.7 на openSUSE Leap 42.1

Установка Qt 5.7 на openSUSE Leap 42.1

Завантажуємо останню версію Qt для Linux:

wget http://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run

Робимо файл виконуваним

chmod +x qt-unified-linux-x64-online.run

Встановлюємо gcc, make та інші необхідні бібліотеки:

sudo zypper install --type pattern devel_basis

Далі встановлюємо Qt:

./qt-unified-linux-x64-online.run

Дотримуємося вказівок графічного інсталятора. Не забуваймо відзначити пункт Source для встановлення вихідних кодів бібліотек.


Складання IBASE SQL драйвера

Для складання драйвера необхідні firebird development пакети. Якщо вони не встановлені, слід виконати наступні команди для встановлення даних пакетів.

sudo zypper in libfbclient2-devel

Після чого переходимо в каталог з вихідними джерелами драйвера ibase, які знаходяться в папці sql драйверів Qt.

cd <QtPath>/5.7/Src/qtbase/src/plugins/sqldrivers/ibase

Після чого редагуємо include файл проекту, оскільки в іншому випадку при збиранні будуть помилки про відсутність бібліотек.

vi ../../../sql/drivers/ibase/qsql_ibase.pri

шукаємо рядок

!contains(LIBS, .*gds.*):!contains(LIBS, .*libfb.*):LIBS += -lgds

змінюємо її на наступну

!contains(LIBS, .*gds.*):!contains(LIBS, .*lfb.*):LIBS += -lgds

Після цього збираємо та встановлюємо драйвер

<QtPath>/Qt/5.7/gcc_64/bin/qmake "INCLUDEPATH+=/usr/include/firebird" "LIBS+=-L/usr/lib64 -lfbclient" ibase.pro
make
make install

Перевірка встановлених драйверів

Для перевірки встановлених драйверів можна створити консольний проект Qt, у PRO-файлі якого необхідно вказати такі модулі Qt:

QT += core sql

main.cpp

Вміст файлу main.cpp буде наступним:

#include <QCoreApplication>
#include <QtSql>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    qDebug() << "Доступные драйверы:" << QSqlDatabase::drivers();

    return a.exec();
}

Висновок

У виводі qDebug() отримуємо інформацію про доступні драйвери, серед яких має бути драйвер QIBASE.

Доступные драйверы: ("QIBASE", "QSQLITE", "QMYSQL", "QMYSQL3", "QPSQL", "QPSQL7")

Вам це подобається? Поділіться в соціальних мережах!

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up