Лог ошибок №2 - Qt 5.7. Компиляция IBASE плагина в Ubuntu 16.10

Процесс решения см.

Qt 5.7. Компиляция IBASE плагина в Ubuntu 16.10

Внимание для Qt 5.7

../../../sql/drivers/ibase/qsql_ibase.cpp:371:35: error: invalid use of incomplete type ‘class QSqlCachedResultPrivate’

class QIBaseResultPrivate: public QSqlCachedResultPrivate

^~~~~~~~~~~~~~~~~~~~~~~

In file included from ../../../sql/drivers/ibase/qsql_ibase.cpp:48:0:

/usr/include/x86_64-linux-gnu/qt5/QtSql/5.6.1/QtSql/private/qsqlcachedresult_p.h:55:7: note: forward declaration of ‘class QSqlCachedResultPrivate’

class QSqlCachedResultPrivate;

^~~~~~~~~~~~~~~~~~~~~~~

../../../sql/drivers/ibase/qsql_ibase.cpp:376:45: error: ISO C++ forbids declaration of ‘Q_DECLARE_SQLDRIVER_PRIVATE’ with no type [-fpermissive]

Q_DECLARE_SQLDRIVER_PRIVATE(QIBaseDriver)

^

../../../sql/drivers/ibase/qsql_ibase.cpp:376:45: error: expected ‘;’ at end of member declaration

In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qnamespace.h:37:0,

from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:41,

from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:40,

from /usr/include/x86_64-linux-gnu/qt5/QtSql/qsqldriver.h:37,

from ../../../sql/drivers/ibase/qsql_ibase_p.h:54,

from ../../../sql/drivers/ibase/qsql_ibase.cpp:40:

../../../sql/drivers/ibase/qsql_ibase.cpp: In member function ‘QIBaseResult* QIBaseResultPrivate::q_func()’:

../../../sql/drivers/ibase/qsql_ibase.cpp:373:5: error: ‘q_ptr’ was not declared in this scope

Q_DECLARE_PUBLIC(QIBaseResult)

^

../../../sql/drivers/ibase/qsql_ibase.cpp: In member function ‘const QIBaseResult* QIBaseResultPrivate::q_func() const’:

../../../sql/drivers/ibase/qsql_ibase.cpp:373:5: error: ‘q_ptr’ was not declared in this scope

Q_DECLARE_PUBLIC(QIBaseResult)

^

../../../sql/drivers/ibase/qsql_ibase.cpp: In constructor ‘QIBaseResultPrivate::QIBaseResultPrivate(QIBaseResult*, const QIBaseDriver*)’:

../../../sql/drivers/ibase/qsql_ibase.cpp:419:7: error: type ‘QSqlCachedResultPrivate’ is not a direct base of ‘QIBaseResultPrivate’

: QSqlCachedResultPrivate(q, drv),

^~~~~~~~~~~~~~~~~~~~~~~

../../../sql/drivers/ibase/qsql_ibase.cpp:421:36: error: ‘drv_d_func’ was not declared in this scope

localTransaction(!drv_d_func()->ibase),

^

../../../sql/drivers/ibase/qsql_ibase.cpp: In member function ‘bool QIBaseResultPrivate::transaction()’:

../../../sql/drivers/ibase/qsql_ibase.cpp:871:20: error: ‘drv_d_func’ was not declared in this scope

if (drv_d_func()->trans) {

^

../../../sql/drivers/ibase/qsql_ibase.cpp: In constructor ‘QIBaseResult::QIBaseResult(const QIBaseDriver*)’:

../../../sql/drivers/ibase/qsql_ibase.cpp:905:58: error: no matching function for call to ‘QSqlCachedResult::QSqlCachedResult(QIBaseResultPrivate&)’

: QSqlCachedResult(*new QIBaseResultPrivate(this, db))

^

In file included from ../../../sql/drivers/ibase/qsql_ibase.cpp:48:0:

/usr/include/x86_64-linux-gnu/qt5/QtSql/5.6.1/QtSql/private/qsqlcachedresult_p.h:65:5: note: candidate: QSqlCachedResult::QSqlCachedResult(const QSqlDriver*)

QSqlCachedResult(const QSqlDriver * db);

^~~~~~~~~~~~~~~~

/usr/include/x86_64-linux-gnu/qt5/QtSql/5.6.1/QtSql/private/qsqlcachedresult_p.h:65:5: note: no known conversion for argument 1 from ‘QIBaseResultPrivate’ to ‘const QSqlDriver*’

Makefile:434: ошибка выполнения рецепта для цели «.obj/qsql_ibase.o»

make: *** [.obj/qsql_ibase.o] Ошибка 1