web-dev-qa-db-fra.com

Impossible de compiler le plugin mysql Qt 5.5.1

J'ai un système avec Kubntu 15.10 et hier, j'ai ugpradé la version Qt en Qt 5.5.1 Opensource via sa MaintenanceTool. Aujourd'hui, j'ai installé le paquet de développement mysql via Sudo apt-get install libmysqlclient-dev. Maintenant, à partir de Qt docs , j'ai essayé de compiler le plugin mysql avec:
cd /opt/QtOpenSource55/5.5/Src/qtbase/src/plugins/sqldrivers/mysql
puis en cours d'exécution qmake avec
/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. Le processus de compilation se termine par l'erreur suivante:

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

Maintenant, le paquet libmysqlclient-dev info utilisant la commande dpkg -L libmysqlclient-dev|grep qsqldriver_p.h ne renvoie aucun résultat, ce qui signifie que le fichier problématique n'est pas du tout installé. Pourquoi?

3
KernelPanic

Trouvez-le dans le répertoire source (quelque chose comme qtbase/src/sql/kernel) et copiez-le dans le répertoire include /opt/QtOpenSource55/5.5/gcc_64/include/QtSql/5.5/QtSql/private.

2
Velkan

Le fichier manquant QtSql/private/qsqldriver_p.h se trouve dans le package qtbase5-private-dev

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