QT 编译 MySQL 库
需要:
Mysql Connector/C , 主要需要他的include和lib文件夹
1,获取Mysql Connector/C
可以直接通过MySQL installer 直接安装,不必安装全部的MySQL
这里我已经安装过MySQL 去C盘找有没有,没有,就打开installer,准备安装
打开之后点击Add,选择最新的Connector/C 这里我选择了x86,32位版本,后边qmake 和 编译的时候都用32位的环境打开
安装成功后回到installer会显示安装的路径和版本
这里 include 文件夹的路径为
C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include
lib 文件夹的路径为
C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib
2,编译生成QT需要的dll
编译可以参考qt的帮助文档,但是好像按他的做有点问题,(我用QT 5.13.0版本没问题,用5.14.0有问题)成功的步骤如下:
使用QT的环境 进入qt的源代码MySQL编译所需路径
选择32位的MinGW环境
cd C:\Qt\5.13.0\Src\qtbase\src\plugins\sqldrivers
执行qmake 定义MySQL的include和lib文件夹
qmake -- MYSQL_INCDIR="C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" MYSQL_LIBDIR="C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib"
因为是MinGW环境,执行编译命令
mingw32-make
如果是MSVC的编译环境,就运行nmake
3,复制生成和所需的dll到环境变量目录下
在plugins\sqldrivers 路径下寻找mysql相关的两个dll qsqlmysql.dll qsqlmysqld.dll
把他们复制到当前编译器的bin目录下,对于我就是
C:\Qt\5.13.0\mingw73_32\plugins\sqldrivers
QT运行需要的dll除了这两个还有MySQL Connector lib文件夹里面的libmysql.dll 需要把此文件复制到运行时环境变量可检测的地方,可以放到编译器的bin目录下
C:\Qt\5.13.0\mingw73_32\bin
参考文档:https://blog.csdn.net/komtao520/article/details/81218863