Ruslan Polupan
May 30, 2018, 2:01 p.m.

Installing the QIBASE driver (Firebird) Qt 5.11 Suse LEAP 42.3

Decided to update Qt. Each time this entails reinstalling the drivers for working with databases.

I decided to write down the sequence of actions.

I hope I save someone a couple of hours. :-)


Install Qt 5.11.

The Qt documentation says:

How to Build the QIBASE Plugin on Unix and macOS

The following assumes InterBase or Firebird is installed in /opt/interbase:

If you are using Firebird, the Firebird library has to be set explicitly:

cd $QTDIR/qtbase/src/plugins/sqldrivers
qmake -- IBASE_PREFIX=/opt/interbase IBASE_LIBS=-lfbclient
> make sub-bases

But everything is not so simple.

Learning SuSE, the Fierbird header files are in /usr/include/firebird.

In order for qmake to run, you need to add it to .bashrc

PATH=$PATH:~/Qt5.11.0/5.11.0/gcc_64/bin
export PATH

Relogin or open a new console.

Go to the folder with the drivers.

cd ~/Qt5.11.0/5.11.0/Src/qtbase/src/plugins/sqldrivers

Now the difference from the documentation:

qmake -- IBASE_INCDIR=/usr/include/firebird IBASE_LIBS=-lfbclient

If you do as indicated in the documentation, nothing happens :-)

We get the following:

Info: creating stash file /home/rust/Qt5.11.0/5.11.0/Src/qtbase/src/plugins/sqldrivers/.qmake.stash                                                                                                                

Running configuration tests...                                                                                                                                                                                     
Checking for DB2 (IBM)... no                                                                                                                                                                                       
Checking for InterBase... yes                                                                                                                                                                                      
Checking for MySQL... yes                                                                                                                                                                                          
Checking for OCI (Oracle)... no                                                                                                                                                                                    
Checking for ODBC... no                                                                                                                                                                                            
Checking for PostgreSQL... no                                                                                                                                                                                      
Checking for SQLite (version 2)... no                                                                                                                                                                              
Checking for TDS (Sybase)... no                                                                                                                                                                                    
Done running configuration tests.                                                                                                                                                                                  

Configure summary:                                                                                                                                                                                                 

Qt Sql:                                                                                                                                                                                                            
 DB2 (IBM) .............................. no                                                                                                                                                                      
 InterBase .............................. yes                                                                                                                                                                     
 MySql .................................. yes                                                                                                                                                                     
 OCI (Oracle) ........................... no                                                                                                                                                                      
 ODBC ................................... no
 PostgreSQL ............................. no
 SQLite2 ................................ no
 SQLite ................................. yes
   Using system provided SQLite ......... no
 TDS (Sybase) ........................... no

Qt is now configured for building. Just run 'make'.
Once everything is built, Qt is installed.
You should NOT run 'make install'.
Note that this build cannot be deployed to other machines or devices.

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.

For the Interbase driver, the configuration is ready.

Farther...

make sub-ibase

When compiling, we get an error:

g++: error: unrecognized command line option ‘-std=c++1z’
g++: error: unrecognized command line option ‘-Wdate-time’

You can google….

Go to the ibase directory.

Open the Makefile in the editor.

Change -std=c++1z to -std=c++11 in two places.

And in the same lines we delete -Wdate-time.

We save the file.

Go to the directory above and repeat:

make sub-ibase

Hooray! He got ready.

Now to install it...

make sub-ibase-install_subtargets

Driver can be used.

Here are the dances with tambourines.

By article asked0question(s)

1

Do you like it? Share on social networks!

Comments

Only authorized users can post comments.
Please, Log in or Sign up
  • Last comments
  • AK
    April 24, 2025, 12:04 p.m.
    UPD: Переписал логику воспроизведения через стороннюю библиотеку BASS. Там выбрать можно
  • Evgenii Legotckoi
    April 16, 2025, 5:08 p.m.
    Благодарю за отзыв. И вам желаю всяческих успехов!
  • IscanderChe
    April 12, 2025, 5:12 p.m.
    Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
  • AK
    April 1, 2025, 11:41 a.m.
    Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
  • Evgenii Legotckoi
    March 9, 2025, 9:02 p.m.
    К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…