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下。

相关推荐
孤狼GPT几秒前
ChatGPT、Codex数据库实战:MyBatis-Plus第一页查询正常,翻到第10000页为什么越来越慢?
mysql·chatgpt·mybatis-plus·codex·深分页
HANDY092001 分钟前
从“不照人”到“剂量达标”:扇叶遮挡式UV-C空气消毒的工程边界与可验证评估框架
开发语言·人工智能·嵌入式硬件·智能家居
Decay__7 分钟前
17_MySQL 监控体系构建 —— mysqld_exporter + Prometheus + Grafana 全栈实战
运维·数据库·sql·mysql·架构
Franciz小测测39 分钟前
MySQL 增量备份实践:文件都在,为什么仍可能恢复失败?
数据库·mysql·binlog
1024奇点9 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
Warren2Lynch10 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
Knight_AL11 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
FRing0311 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幽灵诶12 小时前
Mysql(基于测试的学习)
数据库·mysql
by2099912 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享