QT/6.7.2/Creator编译Windows64 MySQL驱动

Qt版本6.7.2 64位

MySql版本mysql-8.0.39-winx64。

报错:

QSqlDatabase: QMYSQL driver not loaded

QSqlDatabase: available drivers: QSQLITE QMIMER QODBC QPSQL

Failed to connect to database: "Driver not loaded Driver not loaded"

MySQL动态库配置

  1. 将计算机上所安装的MySQL根目录下lib目录下的libmysql.lib和libmysql.dll复制到Qt根目录6.7.2\msvc2019_64\bin下,具体复制的路径依使用的编译器而定
  2. 将计算机上所安装的MySQL根目录下bin目录下的libcrypto-3-x64.dll和libssl-3-x64.dll复制到Qt根目录6.7.2\msvc2019_64\bin下,具体复制的路径依使用的编译器而定

开始手动生成qsqlmysql.dll和qsqlmysql.debug文件

2、手动生成qsqlmysql.dll和qsqlmysql.debug文件。

2.1、复制mysql安装包mysql-8.0.39-winx64.zip解压后的mysql-8.0.39-winx64整个目录到E盘下,唯一要求该文件路径不能有空格,事后删除。

2.2、修改.cmake.conf文件,该文件路径:D:\Qt\6.7.2\Src\qtbase\src\plugins\sqldrivers\.cmake.conf

往该文件中添加五行代码,(记得\换/,保存退出):

set(QT_REPO_MODULE_VERSION "6.7.2")

set(feature_sql_mysql ON)

set(MYSQL_INCLUDE_DIR "E:/mysql-8.0.39-winx64/include")

set(MYSQL_LIBRARY "E:/mysql-8.0.39-winx64/lib")

set(MySQL_FOUND TRUE)

2.3、右击与.cmake.conf同目录下的CMakeLists.txt选择QT打开(或者用QT打开这个文件),然后点击(小锤子)构建并编译。编译成功之后qsqlmysql.dll和qsqlmysql.debug就生成成功了。

2.4、找到qsqlmysql.dll和qsqlmysql.debug(我的在D:\Qt\6.7.2\Src\qtbase\src\plugins\sqldrivers\build\build-QSQLiteDriverPlugins-Desktop_Qt_6_7_2_MSVC2019_64bit-Release\plugins\sqldrivers目录下)将其拷贝到 D:\Qt\6.7.2\msvc2019_64\plugins\sqldrivers下。

相关推荐
用户805533698032 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner2 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
唐青枫3 天前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
小满8783 天前
5.Mysql事务隔离级别与锁机制
mysql
元Y亨H4 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
这个DBA有点耶5 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵5 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
SamDeepThinking5 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员
李白客7 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
Quz7 天前
QML Hello World 入门示例
qt