QT6.8 编译 MSVC2022-64位MySQL驱动
QT6.8没有编译MySql驱动,也没有.pro的项目文件,只能自己想办法编译,网上找了很多方法,终于找到了可以成功编译的方法,下面将我的编译过程详细记录如下:
[声明:本文为原创,未经允许,不得转载]
当前安装情况如下,安装了2个版本的QT:

QT6.8 msvc2022_64环境 D:\ProgramFiles\Qt\6.8.0\msvc2022_64\plugins\sqldrivers 是没有mysql驱动的,要将编译好的放在这里,QT开发时才可以正常运行,否则你的程序会提示:

下面我们开始编译:
一、前提条件
前提条件1:
MySQL 64位驱动,可到官网下mysql-connector-c-6.1.11-winx64.zip ,解压到某个文件夹,例如:
D:\Softwares\QT\MySql\mysql64

前提条件2:
CMake ,如果没安装可以使用Qt Maintenance Tool添加

安装完成后,你可以在Qt安装目录Tools目录下找到 CMake_64

前提条件3:
要安装 Visual Studio 2022 ,这里是用VS编译dll的
二、生成VS项目
看到上面的 cmake-gui.exe没有?我们用带界面应用生成VS工程

按以上选择目录,不要选错误,我们生成的是整个sqldrivers项目,并非只有 mysql,但我们生成后只用mysql
点击Configure弹出以下对话框 ,按照以下选择:

如果不能弹出对话框,请清除缓存 File—Delete Cache
点击Finish可能会出错

我们检查配置项目:
1).输入Qt ,看到Qt6_DIR,按以下配置目录

接着我们再点击 Configure
这时我们会看到中间的有很多自动配置了的选项

2).此时我们可以配置Mysql官网驱动目录了
按照以下 Search中输入 mysql,下方红色部分配置如下:

接着我们再点击 Configure

其它错误我们可以不用理会
接着我们再点击 generate

此时,build目录下就生成的vs的项目文件了

三、编译生成QT插件数据库驱动
看到上方QSQLiteDriverPlugins.sln文件,我们用 Visual Studio 2022打开

我们选择这个项目(QMYSQLDriverPlugin),点击右键—属性,将以下的配置检查修改一下(因为有可能编译出错)


然后在上方切换不同的方式去编译QMYSQLDriverPlugin项目

编译后我们在Build目录下 plugins\sqldrivers下可以看到生成的库文件

我们将上方选中的文件 复制到D:\ProgramFiles\Qt\6.8.0\msvc2022_64\plugins\sqldrivers 下
最后将D:\Softwares\QT\MySql\mysql64\lib\ libmysql.dll 复制到 D:\ProgramFiles\Qt\6.8.0\msvc2022_64\bin
大功告成!
四、后记
测试你的程序,要重启QT
我们对比一下前后应用程序的提示:
【前】

【后】

可用的驱动己经增加了2个 QMARIADB,QMYSQL
应用程序己可正常运行了!
QT6.8 编译 MSVC2022-64位MySQL驱动的更多相关文章
- PowerDesigner16.5 连64位MySQL,出错:SQLSTATE = IM014。原因及解决方案
- 在代码生成工具Database2Sharp中使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库,实现免安装Oracle客户端,兼容32位64位Oracle驱动
由于我们开发的辅助工具Database2Sharp需要支持多种数据库,虽然我们一般使用SQLServer来开发应用较多,但是Oracle等其他数据库也是常用的数据库之一,因此也是支持使用Oracle等 ...
- vs2015编译boost 64位
---恢复内容开始--- step 1: 打开Developer Command Prompt for VS2015命令行窗口 step 2: 执行bootstrap.bat,产生bjam.exe s ...
- win8 64位 mysql安装 Configuration file my.ini error code -1
问题如题,解决方法: 1.由于目录中纯在中文,所以导致代码错误.故而把目录设置成全英文的. 2.下载64位mysql安装,安装32位mysql也会出现此问题.
- 【VS开发】【C/C++开发】vs2015编译boost 64位
vs2015编译boost 64位 ---恢复内容开始--- step 1: 打开Developer Command Prompt for VS2015命令行窗口 step 2: 执行bootstra ...
- InputFormat,OutputFormat,InputSplit,RecordRead(一些常见面试题),使用yum安装64位Mysql
列举出hadoop常用的一些InputFormat InputFormat是用来对我们的输入数据进行格式化的.TextInputFormat是默认的. InputFormat有哪些类型? DBInpu ...
- 编译本地64位版本的hadoop-2.6.0
官方提供的hadoop-2.x版本貌似都是32位的,在64位机子下使用可能会报错,最好使用官方提供的源码进行本地编译,编译成适合本地硬件环境的64位软件包. 关于native Hadoop是使用J ...
- 关于Win7 64位 mysql 5.7下载安装问题
1.从官网下载mysql: 网址:http://dev.mysql.com/downloads/mysql/ 这是我们要找的,win7 64位 点击下载: 出现如图所示,我们不必要登录注册,点击红线内 ...
- win10 64位 mysql安装过程出现status显示failed
mysql安装过程出现status显示failed,如下图: 由于我的电脑是64位系统,这里需要升级一个插件,即32位 visual C++ 2013 and visual C++ redistri ...
- windows编译openssl(64位)一游
编译openssl,一套标准流程: (环境: win10 64位os, vs2019) 需要的工具:perl nasm openssl源码包 1 安装perl 2 下载nasm,将n ...
随机推荐
- 【Python + Appium】之元素定位总结(更新)
一.ID定位 uiautomatorviewer里面的:resource-id driver.find_element(By.ID,"com.csks.businesses:id/tv_nu ...
- Unity中利用遗传算法训练MLP
Unity中利用遗传算法训练MLP 梯度下降法训练神经网络通常需要我们给定训练的输入-输出数据,而用遗传算法会便捷很多,它不需要我们给定好数据,只需要随机化多个权重进行N次"繁衍进化&quo ...
- 基于Service Worker实现WebRTC局域网大文件传输能力
基于Service Worker实现WebRTC局域网大文件传输能力 Service Worker是一种驻留在用户浏览器后台的脚本,能够拦截和处理网络请求,从而实现丰富的离线体验.缓存管理和网络效率优 ...
- JS实现树形结构数据的模糊搜索查询
简单示例: 需求:输入 "题2" 字,希望树形结构中带有 "题2" 字的项显示,即使父节点没有,但子节点含有,父节点仍要返回. let arr = [ { ti ...
- 前端项目通过 Nginx 发布至 Linux,并通过 rewrite 配置访问后端接口
〇.前言 本文通过将 arco 框架的前端项目,部署至 CentOS 7,并访问同服务器的 WebAPI 接口,来简单演示一下,如何将前端项目发布至 Linux 系统. 关于 ASP.NET WebA ...
- SaaS架构:流程架构分析
大家好,我是汤师爷~ 今天聊聊SaaS架构中的流程架构分析. 业务流程的概念 业务流程是企业为实现目标而制定的一套系统化的工作方法.它由一系列有序的业务活动组成,按照既定规则将资源(输入)转化为有价值 ...
- 2024年常用的Net web框架
ASP.NET Core 框架声明:是微软推出的新一代开源.跨平台的 Web 应用框架,用于构建高性能.现代化的 Web 应用程序. 官网地址:https://dotnet.microsoft.com ...
- Windows安装winget
打开GitHub链接地址:https://github.com/microsoft/winget-cli/releases 选择最新版本,点进去后 找到名为后缀名为 ".msixbundle ...
- 解决 Vue 项目打包上线后客户端缓存的问题
由于重新打包后会导致对应的 js 和 css 文件 hash 值发生变化,客户端不刷新的话就会存在之前的文件找不到,导致报错的问题. 通过 build.sh 定义打包命令 #!/usr/bin/env ...
- KASAN 中kasan_multi_shot 的作用
kasan_multi_shot 是 Linux 内核配置选项之一,与 Kernel Address Sanitizer (KASAN) 相关.KASAN 是一种内核内存错误检测工具,能够检测内核代码 ...