Qt6编译安装MySql driver实操

这是对我之前些的如何编译安装mysql driver的补充。

大家都知道由于开源权限问题,Qt不得将MySQL也打包进来,所以你要用到mysql driver需要自己去编译安装。之前我也根据官网的步骤写过一篇如何编译安装的步骤。这里我再重新安装了一次,也算是做一些补充。:

以下通过编译安装32位mysql驱动插件作为例子[Qt5.15.2 vs2019 mysql-connector-c-6.1.11-win32]
1、下载对应的32位MySQL connector,这里我用的是mysql-connector-c-6.1.11-win32. 解压后我放在路径[E:\mysql-connector-c-6.1.11-win32]
2、调用Qt控制台环境命令行[Qt 5.15.2 (MSVC 2019 32-bit)]进入Qt控制台
3、运行vs2019的32位环境批处理[x86 Native Tools Command Prompt for VS 2019]
   对应批处理是这个[%comspec% /k "G:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"]
4、进入sqldriver所在源代码目录[G:\Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers>],执行如下命令:
qmake -- MYSQL_INCDIR="E:\mysql-connector-c-6.1.11-win32\include" MYSQL_LIBDIR="E:\mysql-connector-c-6.1.11-win32\lib"
看到系统提示:
Checking for PostgreSQL... no
Checking for SQLite (version 2)... no
Checking for TDS (Sybase)... no
Done running configuration tests.

Configure summary:

Qt Sql Drivers:
  DB2 (IBM) .............................. no
  InterBase .............................. no
  MySql .................................. yes
  OCI (Oracle) ........................... no
  ODBC ................................... yes
  PostgreSQL ............................. no
  SQLite2 ................................ no
  SQLite ................................. yes
    Using system provided SQLite ......... no
  TDS (Sybase) ........................... no

Qt is now configured for building. Just run 'nmake'.
Once everything is built, you must run 'nmake install'.
Qt will be installed into 'G:\Qt\5.15.2\msvc2019'.

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.
只要有这一行[MySql .................................. yes]表示configure mysqldriver 成功

5、上述提示MySql为yes后就可以执行如下命令:
nmake sub-mysql
系统开始编译如下:[节选部分]
 cl -c -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -O2 -Zi -MD -std:c++17 -utf-8 /wd4530 /wd4577 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 /Fd.obj\release\qsqlmysql.vc.pdb -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DNDEBUG -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -D_WINDLL -I. -IG:\Qt\5.15.2\msvc2019\include\QtSql\5.15.2 -IG:\Qt\5.15.2\msvc2019\include\QtSql\5.15.2\QtSql -IG:\Qt\5.15.2\msvc2019\include\QtCore\5.15.2 -IG:\Qt\5.15.2\msvc2019\include\QtCore\5.15.2\QtCore -IG:\Qt\5.15.2\msvc2019\include -IG:\Qt\5.15.2\msvc2019\include\QtSql -IG:\Qt\5.15.2\msvc2019\include\QtCore -I.moc\release -IE:\mysql-connector-c-6.1.11-win32\include -IC:\opensslx86\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresqlx86\pgsql\include -IG:\Qt\5.15.2\msvc2019\mkspecs\win32-msvc -Fo.obj\release\ @C:\Users\yjy\AppData\Local\Temp\nm1915.tmp
qsql_mysql.cpp
main.cpp
正在生成代码...
        cl -c -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -O2 -Zi -MD -std:c++17 -utf-8 /wd4530 /wd4577 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 /Fd.obj\release\qsqlmysql.vc.pdb -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_NO_LINKED_LIST -DQT_NO_JAVA_STYLE_ITERATORS -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DNDEBUG -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -D_WINDLL -I. -IG:\Qt\5.15.2\msvc2019\include\QtSql\5.15.2 -IG:\Qt\5.15.2\msvc2019\include\QtSql\5.15.2\QtSql -IG:\Qt\5.15.2\msvc2019\include\QtCore\5.15.2 -IG:\Qt\5.15.2\msvc2019\include\QtCore\5.15.2\QtCore -IG:\Qt\5.15.2\msvc2019\include -IG:\Qt\5.15.2\msvc2019\include\QtSql -IG:\Qt\5.15.2\msvc2019\include\QtCore -I.moc\release -IE:\mysql-connector-c-6.1.11-win32\include -IC:\opensslx86\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresqlx86\pgsql\include -IG:\Qt\5.15.2\msvc2019\mkspecs\win32-msvc -Fo.obj\release\ @C:\Users\yjy\AppData\Local\Temp\nm24BE.tmp
moc_qsql_mysql_p.cpp
        link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /OPT:REF /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.15 /OUT:..\plugins\sqldrivers\qsqlmysql.dll @C:\Users\yjy\AppData\Local\Temp\nm27CC.tmp
  正在创建库 ..\plugins\sqldrivers\qsqlmysql.lib 和对象 ..\plugins\sqldrivers\qsqlmysql.exp
        "G:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX86\x86\nmake.exe" -f Makefile.Debug all

6、执行安装命令
nmake install
系统提示如下:[节选部分]
 copy /y ..\plugins\sqldrivers\qsqlited.dll G:\Qt\5.15.2\msvc2019\plugins\sqldrivers\qsqlited.dll
已复制         1 个文件。
        copy /y ..\plugins\sqldrivers\qsqlited.pdb G:\Qt\5.15.2\msvc2019\plugins\sqldrivers\qsqlited.pdb
已复制         1 个文件。
        G:\Qt\5.15.2\msvc2019\bin\qmake.exe -install qinstall G:\Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers\lib\cmake\Qt5Sql\Qt5Sql_QSQLiteDriverPlugin.cmake G:\Qt\5.15.2\msvc2019\lib\cmake\Qt5Sql\Qt5Sql_QSQLiteDriverPlugin.cmake

7、这是可以检查相关的Qt5.15.2\msvc2019\plugins\sqldrivers路径下对应的库文件了



 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值