Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. QSqlDatabase: QMYSQL driver not loaded / Build MySQL Plugin
QtWS25 Last Chance

QSqlDatabase: QMYSQL driver not loaded / Build MySQL Plugin

Scheduled Pinned Locked Moved Solved Installation and Deployment
qmysqlsqlmoduleubuntu 14.04linux mint
32 Posts 9 Posters 42.3k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #23

    Hi and welcome to devnet,

    Which architecture are on ?

    Interested in AI ? www.idiap.ch
    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

    1 Reply Last reply
    0
    • fikou1335F Offline
      fikou1335F Offline
      fikou1335
      wrote on last edited by fikou1335
      #24

      Hi and thanks for your quick response

      I m working on Ubuntu 64bits
      i got this

      Precision-M4600:/usr/local/Trolltech/Qt-4.8.6/plugins/sqldrivers$ ldd libqsqlmysql.so 	linux-vdso.so.1 =>  (0x00007ffceb314000)
      	libmysqlclient.so.18 => /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 (0x00007f7a884c6000)
      	libQtSql.so.4 => /usr/local/Trolltech/Qt-4.8.6/lib/libQtSql.so.4 (0x00007f7a88285000)
      	libQtCore.so.4 => /usr/local/Trolltech/Qt-4.8.6/lib/libQtCore.so.4 (0x00007f7a87d91000)
      	libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7a87a7f000)
      	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f7a87868000)
      	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7a874a3000)
      	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f7a8728a000)
      	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7a87086000)
      	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7a86e68000)
      	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7a86b62000)
      	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f7a8695a000)
      	/lib64/ld-linux-x86-64.so.2 (0x00007f7a88c10000)
      
      

      and this

      Precision-M4600:/usr/lib/x86_64-linux-gnu$ ldd libmysqlclient.so.18
      	linux-vdso.so.1 =>  (0x00007ffe50bc0000)
      	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fe8f4940000)
      	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe8f473c000)
      	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe8f451e000)
      	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe8f4218000)
      	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe8f3e53000)
      	/lib64/ld-linux-x86-64.so.2 (0x00007fe8f5091000)
      
      

      If I comment the addBase line in my code everything works fine without connecting to the Database of course.
      when I try to list the drivers using

      QStringList driverlist =QSqlDatabase::drivers();
      

      I got this

      Databases: QSQLITE QMYSQL3 QMYSQL

      Everything works fine Monday, I checked the database, I could write on it fine,, but yesterday, it crash my application
      hope it can help!

      1 Reply Last reply
      0
      • fikou1335F Offline
        fikou1335F Offline
        fikou1335
        wrote on last edited by
        #25

        I have just created a new app with the main function and it works and connect fine to my database.

        In my code I comment all the last code that I added this week and SURPRISE it works as well.
        the problem is probably due to a third library that i started to use this week. I ll check why it cause a crach to mysql o_O

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #26

          What new library did you add ?

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0
          • fikou1335F Offline
            fikou1335F Offline
            fikou1335
            wrote on last edited by
            #27

            This one Dahua SDK

            You can check by yourslef, they have a source example, PTZControl that works fine, but try to add

                  DB = QSqlDatabase::addDatabase( "QMYSQL");   
            

            and you should get the same error.

            this sdk is used to control PTZ cams of Dahua brand.
            I changed my code by creating a new app to control cameras and get the informations of position from my big application.

            put this main instsead of it

            #include <QtGui/QApplication>
            #include "dialog.h"
            #include <QTextCodec>
            #include <QObject>
            #include <QtSql/QSqlDatabase>
            #include <QStringList>
            #include <QtSql/QSqlQuery>
            #include <QtSql/QSqlRecord>
            #include <QVariant>
            #include <iostream>
            
            
            
            int main(int argc, char *argv[])
            {
                QSqlDatabase DB;
                cout <<endl<< "try connect MYSQL "<< endl;
                try
                {
                    DB = QSqlDatabase::addDatabase( "QMYSQL");
                }
                catch(...)
                {
                    cout << "fatal error"<< endl;
                }
                cout << "add database"<< endl;
                DB.setDatabaseName( "intrusiondetection" );
                DB.setUserName( "root" );
            
                DB.setPassword( "root" );
                cout << "1"<< endl;
            
                DB.setHostName( "" );
            
                cout << "try to connect"<< endl;
                if (DB.open())
                {
                    cout << "QMYSQL correctly connected "<< endl;
                }
                else
                {
                    cout << "QMYSQL not connected "<< endl;
                }
            
            
                QApplication a(argc, argv);
                QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
                Dialog w;
                w.show();
            
                return a.exec();
            }
            
            

            tell me if you got the same error.?

            1 Reply Last reply
            0
            • SGaistS Offline
              SGaistS Offline
              SGaist
              Lifetime Qt Champion
              wrote on last edited by
              #28

              One thing that you should first correct: move the database initialization code after the QApplication object creation.

              Interested in AI ? www.idiap.ch
              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

              1 Reply Last reply
              0
              • fikou1335F Offline
                fikou1335F Offline
                fikou1335
                wrote on last edited by
                #29

                i already tried every configuration but doesn't work! just a question by the way:
                Is the QDbus available on the Ubuntu system since they said it is Unix only library..? I try to communicate between PTZcontrol process and my application

                1 Reply Last reply
                0
                • SGaistS Offline
                  SGaistS Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on last edited by
                  #30

                  Ubuntu is a unix based OS since it's based on the Debian distribution. QDBus is available on Linux, OS X and Windows (the two later requires that you install dbus by hand)

                  Interested in AI ? www.idiap.ch
                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                  1 Reply Last reply
                  0
                  • H Offline
                    H Offline
                    Hervinsen
                    wrote on last edited by
                    #31

                    Thanks to your guide, it is working on Kubuntu 16 with Qt 5.8
                    here is my output :

                    • /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers$ ldd libqsqlmysql.so
                      linux-vdso.so.1 => (0x00007ffcf0bf4000)
                      libQt5Sql.so.5 => /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers/./../../lib/libQt5Sql.so.5 (0x00007f28a7452000)
                      libQt5Core.so.5 => /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers/./../../lib/libQt5Core.so.5 (0x00007f28a6d32000)
                      libmysqlclient.so.20 => /usr/lib/x86_64-linux-gnu/libmysqlclient.so.20 (0x00007f28a66fa000)
                      libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f28a6372000)
                      libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f28a5fa2000)
                      libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f28a5d82000)
                      libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f28a5a72000)
                      libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f28a585a000)
                      libicui18n.so.56 => /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers/./../../lib/libicui18n.so.56 (0x00007f28a53ba000)
                      libicuuc.so.56 => /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers/./../../lib/libicuuc.so.56 (0x00007f28a5002000)
                      libicudata.so.56 => /opt/Qt5.8.0/5.8/gcc_64/plugins/sqldrivers/./../../lib/libicudata.so.56 (0x00007f28a361a000)
                      libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f28a3412000)
                      librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f28a320a000)
                      libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f28a2fea000)
                      libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007f28a2de2000)
                      libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f28a2aca000)
                      /lib64/ld-linux-x86-64.so.2 (0x0000560448d0b000)
                      libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f28a285a000)
                    1 Reply Last reply
                    0
                    • A Offline
                      A Offline
                      Amit Talbot
                      wrote on last edited by
                      #32

                      im using qt 5.9 on mac this piece of code worked like charm for me

                      brew install mysql-connector-c
                      
                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved