Qt/C++ - Lesson 053. Building IBASE SQL driver Qt 5.7 on openSUSE Leap 42.1

FireBird, IBASE, Leap, openSUSE, Qt, SQL

Installing Qt 5.7 on openSUSE Leap 42.1

Download the latest version of Qt in Linux:

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

Making the file executable

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

Install gcc, make, and other necessary libraries:

sudo zypper install --type pattern devel_basis

Next, install the Qt:

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

Follow the instructions of the graphical installer. Do not forget to select the item of the Source code libraries.

Building IBASE SQL driver

To build the driver must be installed firebird development packages. If they are not installed, then the following command to install these packages must be performed.

sudo zypper in libfbclient2-devel

Then go to the directory with the source ibase drivers that are in the driver Qt sql folder.

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

Then edit the include file of project, because otherwise the building will be errors about missing libraries.

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

We look for the line

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

and change it to the next

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

After that, compile and install driver

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

Checking the installed drivers

To check the drivers installed, you can create a console project Qt, PRO-file in which you must specify the following Qt modules:

QT += core sql

main.cpp

ontent main.cpp file will be as follows:

#include <QCoreApplication>
#include <QtSql>

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

    return a.exec();
}

Output

The output qDebug () obtain information about the available drivers, including the driver must be QIBASE.

Доступные драйверы: ("QIBASE", "QSQLITE", "QMYSQL", "QMYSQL3", "QPSQL", "QPSQL7")
We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate

Comments

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

Hello, Dear Users of EVILEG!!!

If the site helped you, then support the development of the site financially, please.

You can do it by following ways:

Thank you, Evgenii Legotckoi

DN
Jan. 28, 2020, 8:01 a.m.
Denis Nikolaev

C++ - Тест 003. Условия и циклы

  • Result:14points,
  • Rating points-10
SF
Jan. 27, 2020, 4:10 p.m.
Sergei Filin

C++ - Test 001. The first program and data types

  • Result:73points,
  • Rating points1
BM
Jan. 26, 2020, 12:16 a.m.
Bekzod Muminov

C++ - Test 001. The first program and data types

  • Result:53points,
  • Rating points-4
Last comments
m
Jan. 27, 2020, 8:53 p.m.
michaeldevp

Единственная проблема состоит в том, что для выделения QCheckBox приходится дважны нажимать мышь. Получается что сначала выделяется ячейка. а только потом фокус уже попадает на виджет. …
Jan. 27, 2020, 12:01 p.m.
Ruslan Polupan

Да так, посмотрел библиотеку попробовал примеры...
s
Jan. 27, 2020, 1:51 a.m.
shame

Чего не webassembly?
Jan. 22, 2020, 1:12 a.m.
Docent

Полезная статья. Как всегда - то что надо. Добавлю ещё маленькую полезность - после установки tracer (88 строка) и перед выводом значений в lineEdit (91 строка) стоит добавить updatePositio…
Jan. 17, 2020, 1:31 p.m.
Andrej Jankovich

Выглядит как ошибка библиотеки. Расскажите подробно на какой платформе вы собираете проект (MinGW или MSVC) их версии и версии Qt.
Now discuss on the forum
f
Jan. 29, 2020, 11:27 a.m.
fen3der

Добрый день Сломал уже всю голову, никак не могу разобраться с печатью Проблема в следующем: если программа открыта не на весь экран, то документ распечатанный выглядит так …
s
Jan. 29, 2020, 11 a.m.
shuric

Доброго времени суток. Пытаюсь разобраться с QMdiArea. При создании subWindow все понятно, но не могу понять почему при закрытии subWindow не освобождается память. Вот простой при…
Jan. 28, 2020, 1:56 p.m.
Pavel.K

разобрался
Jan. 27, 2020, 2:17 p.m.
Il'ja Chichak

а почему бы не сделать одну модель, например Attachement со всеми этими полями, и в зависимости от действия пользователя, например, "добавить документ", "добавить картинку" и т.д. класть все это…
E
Jan. 26, 2020, 10:42 p.m.
Edi

Другого способа, как получать перезагруженный контент через JavaScript на странице, я не знаю. Получилось сделать без QWebEngineView, с помощью QWebEnginePage, runJavaScrip…
EVILEG
About
Services
© EVILEG 2015-2019
Recommend hosting TIMEWEB