web-dev-qa-db-ja.com

Qt 5.5.1 mysqlプラグインをコンパイルできません

Kubntu 15.10のシステムがあり、昨日MaintenanceToolを介してQtバージョンをQt 5.5.1 Opensourceにアップグレードしました。今日、Sudo apt-get install libmysqlclient-dev経由でmysql開発パッケージをインストールしました。さて、 Qt docs から、mysqlプラグインを次のようにコンパイルしようとしました:
cd /opt/QtOpenSource55/5.5/Src/qtbase/src/plugins/sqldrivers/mysql
次にqmakeを実行します
/opt/QtOpenSource55/5.5/gcc_64/bin/qmake "INCLUDEPATH+=/usr/local/include" "LIBS+=-L/usr/local/lib -lmysqlclient_r" mysql.pro && make all && make install。コンパイルプロセスは次のエラーで終了します。

g++ -c -pipe -I/usr/include/mysql -O2 -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -I/usr/local/include -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtCore/5.5.0 -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtCore/5.5.0/QtCore -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtSql/5.5.0 -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtSql/5.5.0/QtSql -I../../../../include -I../../../../include/QtSql -I../../../../include/QtCore -I.moc -I../../../../mkspecs/linux-g++ -o .obj/qsql_mysql.o ../../../sql/drivers/mysql/qsql_mysql.cpp
../../../sql/drivers/mysql/qsql_mysql.cpp:36:40: fatal error: QtSql/private/qsqldriver_p.h: No such file or directory
 #include <QtSql/private/qsqldriver_p.h>
                                        ^
compilation terminated.
Makefile:2003: recipe for target '.obj/qsql_mysql.o' failed
make: *** [.obj/qsql_mysql.o] Error 1

現在、パッケージlibmysqlclient-devコマンドdpkg -L libmysqlclient-dev|grep qsqldriver_p.hを使用した情報はヒットを返しません。つまり、問題のあるファイルはまったくインストールされていません。どうして?

3
KernelPanic

ソースディレクトリ(qtbase/src/sql/kernelなど)で見つけて、インクルードディレクトリ/opt/QtOpenSource55/5.5/gcc_64/include/QtSql/5.5/QtSql/privateにコピーします。

2
Velkan

欠落しているファイルQtSql/private/qsqldriver_p.hはパッケージqtbase5-private-devにあります

Sudo apt-get install qtbase5-private-dev
4
A.B.