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. Building Qt with MySQL driver
Forum Updated to NodeBB v4.3 + New Features

Building Qt with MySQL driver

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
mysql driversource
11 Posts 3 Posters 3.4k Views 2 Watching
  • 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.
  • M Offline
    M Offline
    Montjet
    wrote on 11 Jul 2018, 10:29 last edited by Montjet 7 Nov 2018, 11:00
    #1

    Hi,
    I am trying to build Qt 5.11.1 x64 with MySQL driver (Windows).
    Without MySQL it compiles properly, but I got error with MySQL:

    (...)
    qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
    qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
    qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
    qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation
    (...)
            link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.11 /OUT:..\..\..\..\plugins\platforms\qwindows.dll @C:\Users\ale\AppData\Local\Temp\qwindows.dll.14880.62125.jom
       Creating library ..\..\..\..\plugins\platforms\qwindows.lib and object ..\..\..\..\plugins\platforms\qwindows.exp
            link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.11 /OUT:..\..\..\..\plugins\platforms\qdirect2d.dll @C:\Users\ale\AppData\Local\Temp\qdirect2d.dll.2552.61000.jom
       Creating library ..\..\..\..\plugins\platforms\qdirect2d.lib and object ..\..\..\..\plugins\platforms\qdirect2d.exp
    jom: C:\Qt5.11Sources\5.11.1\Src\qtbase\src\Makefile [sub-plugins-make_first] Error 2
    jom: C:\Qt5.11Sources\5.11.1\Src\qtbase\Makefile [sub-src-make_first] Error 2
    jom: C:\Qt5.11Sources\5.11.1\Src\Makefile [module-qtbase-make_first] Error 2
    

    configure command:

    configure -debug -nomake examples -nomake tests -opensource -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\OpenSSL-Win64\include -L C:\OpenSSL-Win64\lib -sql-mysql -I "C:\Program Files\MySQL\MySQL Server 8.0\include" -L "C:\Program Files\MySQL\MySQL Server 8.0\lib"
    

    Installed package:
    Python 2.7.15
    OpenSSL x64

    and MySQL server 8.0 with Python connector for Python 2.7.
    Please help anybody.

    Compiler: jom

    R 1 Reply Last reply 11 Jul 2018, 10:36
    0
    • M Montjet
      11 Jul 2018, 10:29

      Hi,
      I am trying to build Qt 5.11.1 x64 with MySQL driver (Windows).
      Without MySQL it compiles properly, but I got error with MySQL:

      (...)
      qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
      qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
      qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation
      (...)
              link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.11 /OUT:..\..\..\..\plugins\platforms\qwindows.dll @C:\Users\ale\AppData\Local\Temp\qwindows.dll.14880.62125.jom
         Creating library ..\..\..\..\plugins\platforms\qwindows.lib and object ..\..\..\..\plugins\platforms\qwindows.exp
              link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.11 /OUT:..\..\..\..\plugins\platforms\qdirect2d.dll @C:\Users\ale\AppData\Local\Temp\qdirect2d.dll.2552.61000.jom
         Creating library ..\..\..\..\plugins\platforms\qdirect2d.lib and object ..\..\..\..\plugins\platforms\qdirect2d.exp
      jom: C:\Qt5.11Sources\5.11.1\Src\qtbase\src\Makefile [sub-plugins-make_first] Error 2
      jom: C:\Qt5.11Sources\5.11.1\Src\qtbase\Makefile [sub-src-make_first] Error 2
      jom: C:\Qt5.11Sources\5.11.1\Src\Makefile [module-qtbase-make_first] Error 2
      

      configure command:

      configure -debug -nomake examples -nomake tests -opensource -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\OpenSSL-Win64\include -L C:\OpenSSL-Win64\lib -sql-mysql -I "C:\Program Files\MySQL\MySQL Server 8.0\include" -L "C:\Program Files\MySQL\MySQL Server 8.0\lib"
      

      Installed package:
      Python 2.7.15
      OpenSSL x64

      and MySQL server 8.0 with Python connector for Python 2.7.
      Please help anybody.

      Compiler: jom

      R Offline
      R Offline
      raven-worx
      Moderators
      wrote on 11 Jul 2018, 10:36 last edited by
      #2

      @Montjet said in Building Qt with MySQL driver:

      Without MySQL it compiles properly, but I got error with MySQL:
      (...)

      you left out the actual compile error.

      --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
      If you have a question please use the forum so others can benefit from the solution in the future

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Montjet
        wrote on 11 Jul 2018, 10:59 last edited by Montjet 7 Nov 2018, 11:05
        #3

        Ough, you're right.

        qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
        qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
        qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
        qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation
        

        #edit
        Source:
        alt text

        K R 2 Replies Last reply 11 Jul 2018, 11:11
        0
        • M Montjet
          11 Jul 2018, 10:59

          Ough, you're right.

          qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
          qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
          qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
          qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation
          

          #edit
          Source:
          alt text

          K Offline
          K Offline
          koahnig
          wrote on 11 Jul 2018, 11:11 last edited by
          #4

          @Montjet

          Which compiler are you using?

          jom is a Qt based substitute for nmake, but may be used also for MinGW. However, it is definitely not a compiler.

          I guess you are trying to use a MSVC compiler when looking at the error code.
          Wondering why you try to compile yourself. 64 bit pre-builds are available for MSVC compilers.
          Are you using an older version of MSVC?

          Vote the answer(s) that helped you to solve your issue(s)

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Montjet
            wrote on 11 Jul 2018, 11:20 last edited by
            #5

            Visual Studio 2017 Community:

            CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
            

            I want to change type of QVariant (from Double to String) for DECIMAL column.

            1 Reply Last reply
            0
            • M Montjet
              11 Jul 2018, 10:59

              Ough, you're right.

              qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
              qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
              qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
              qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation
              

              #edit
              Source:
              alt text

              R Offline
              R Offline
              raven-worx
              Moderators
              wrote on 11 Jul 2018, 11:22 last edited by
              #6

              @Montjet said in Building Qt with MySQL driver:

              qsql_mysql.cpp(235): error C3646: 'nullIndicator': unknown override specifier
              qsql_mysql.cpp(235): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
              qsql_mysql.cpp(233): error C2614: 'QMYSQLResultPrivate::QMyField': illegal member initialization: 'nullIndicator' is not a base or member
              qsql_mysql.cpp(233): fatal error C1903: unable to recover from previous error(s); stopping compilation

              seems your compiler doesn't find the mysql lib?
              Did you specify it?

              --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
              If you have a question please use the forum so others can benefit from the solution in the future

              1 Reply Last reply
              0
              • M Offline
                M Offline
                Montjet
                wrote on 11 Jul 2018, 12:04 last edited by
                #7

                I just called:

                configure -debug -nomake examples -nomake tests -opensource -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\OpenSSL-Win64\include -L C:\OpenSSL-Win64\lib -sql-mysql -I "C:\Program Files\MySQL\MySQL Server 8.0\include" -L "C:\Program Files\MySQL\MySQL Server 8.0\lib"
                

                Should I do something else?

                R 1 Reply Last reply 11 Jul 2018, 12:14
                0
                • M Montjet
                  11 Jul 2018, 12:04

                  I just called:

                  configure -debug -nomake examples -nomake tests -opensource -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\OpenSSL-Win64\include -L C:\OpenSSL-Win64\lib -sql-mysql -I "C:\Program Files\MySQL\MySQL Server 8.0\include" -L "C:\Program Files\MySQL\MySQL Server 8.0\lib"
                  

                  Should I do something else?

                  R Offline
                  R Offline
                  raven-worx
                  Moderators
                  wrote on 11 Jul 2018, 12:14 last edited by
                  #8

                  @Montjet
                  First make sure that your path (C:\Program Files\MySQL\MySQL Server 8.0) really contains the header, lib and dll files!

                  easiest would be to add the following line to the .pro file of the mysql plugin:

                  LIBS+=-LC:/path/to/mySQL/lib -lmysql
                  

                  Or alternatively (since you are using MSVC), do the following in your command line window/script:

                  CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
                  SET INCLUDE=C:\path\to\mySQL\include;%INCLUDE%
                  SET LIB=C:\path\to\mySQL\lib\mysql.lib;%LIB%
                  
                  ==> start building
                  

                  --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                  If you have a question please use the forum so others can benefit from the solution in the future

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    Montjet
                    wrote on 11 Jul 2018, 12:29 last edited by
                    #9

                    The same error.

                    echo %INCLUDE%:

                    C:\Program Files\MySQL\MySQL Server 8.0\include;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\ATLMFC\include;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\include;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\winrt;
                    

                    echo %LIB%

                    C:\Program Files\MySQL\MySQL Server 8.0\lib\mysqlclient.lib;C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\ATLMFC\lib\x64;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\lib\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\lib\um\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.15063.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.15063.0\um\x64;
                    

                    Instead of mysql.lib I added libmysql.lib and mysqlclient.lib, beacause there is not this file:
                    alt text

                    R 1 Reply Last reply 11 Jul 2018, 12:38
                    0
                    • M Montjet
                      11 Jul 2018, 12:29

                      The same error.

                      echo %INCLUDE%:

                      C:\Program Files\MySQL\MySQL Server 8.0\include;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\ATLMFC\include;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\include;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.15063.0\winrt;
                      

                      echo %LIB%

                      C:\Program Files\MySQL\MySQL Server 8.0\lib\mysqlclient.lib;C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\ATLMFC\lib\x64;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\lib\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\lib\um\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.15063.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.15063.0\um\x64;
                      

                      Instead of mysql.lib I added libmysql.lib and mysqlclient.lib, beacause there is not this file:
                      alt text

                      R Offline
                      R Offline
                      raven-worx
                      Moderators
                      wrote on 11 Jul 2018, 12:38 last edited by raven-worx 7 Nov 2018, 12:52
                      #10

                      @Montjet
                      my_bool typedef was removed from 8.0.1 onwards.
                      So you need to downgrade to a previous version.

                      --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                      If you have a question please use the forum so others can benefit from the solution in the future

                      1 Reply Last reply
                      1
                      • M Offline
                        M Offline
                        Montjet
                        wrote on 11 Jul 2018, 12:49 last edited by
                        #11

                        Ok, thank You so much.
                        I will try to do it, tomorrow.

                        1 Reply Last reply
                        0

                        6/11

                        11 Jul 2018, 11:22

                        • Login

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