qt连接mysql,自编译生成驱动文件

CMake+ninja编译qt所需的mysql驱动文件

想用qt连接mysql数据库,但是在qt6.0版本之后都不自带驱动需要自己编译,过程中由于不熟悉cmake以及ninja,踩了一百个坑,简单记录一下。

写在前面

csdn上也有很多大佬写得用cmake-gui来编译生成的, 但是比较繁琐,这里采用官方提供的方法,非常快捷。

步骤

新建文件夹

首先新建一个文件夹用于存放编译后的文件,我这里新建位置如下:
D:\Qt\build

命令行进入

cd D:\Qt\build

利用cmake和ninja来编译

cmake和ninja的安装就不说了,教程很多,推荐用git的方式,简单快捷。
安装完成后输入如下语句:
qt-cmake -G Ninja D:\Qt\6.4.2\Src\qtbase\src\plugins\sqldrivers -DMySQL_INCLUDE_DIR="G:\MySQL\mysql-8.0.32-winx64\include" -DMySQL_LIBRARY="G:\MySQL\mysql-8.0.32-winx64\lib\libmysql.lib" -DCMAKE_INSTALL_PREFIX="D:\Qt\6.4.2\mingw_64"

这句话总共有三部分需要注意:

  1. 紧跟在Ninja 后的为需要编译的路径,此处为D:\Qt\6.4.2\Src\qtbase\src\plugins\sqldrivers;
  2. -DMySQL_INCLUDE_DIR= 后跟mysql目录下的include文件夹,此处为"G:\MySQL\mysql-8.0.32-winx64\include";
  3. -DMySQL_LIBRARY=后跟mysql文件夹下lib文件夹中的libmysql.lib文件,此处具体路径为:“G:\MySQL\mysql-8.0.32-winx64\lib\libmysql.lib”

最后一部分有博主说可有可无,不会生效,亲测属实。

特别注意!!!!!:mysql的文件路径中不能带空格!我的mysql本来放在program files文件夹里,导致后续无法找到文件路径一直报错,又不容易一眼看出来,非常搞人心态。

还有注意!!!!!:系统环境变量里面除了qt安装的编译器最好不要再有其他的mingw编译器路径,否则也会报错

再次输入ninja即可在build文件夹的子文件中中得到驱动文件,路径为:build\plugins\sqldrivers
Ninja

放入对应文件夹

将驱动文件放入对应文件夹,路径为:D:\Qt\6.4.2\mingw_64\plugins\sqldrivers
在这里插入图片描述
另外还需要将mysql\lib文件夹中的如下两个文件放入Qt\6.4.2\mingw_64\bin目录中:
在这里插入图片描述
将qt creator关闭并重启,即可生效!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zczplus

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值