一、准备工作
1. Connector/C
下面三项中选择一项即可
(1) MariaDB Connector/C
MariaDB是MySQL被Oracle收购后的开源分支,完全兼容MySQL,因为其预编译库的依赖最少,所以这边最为推荐,下载地址:https://downloads.mariadb.com/Connectors/c/
找到想要的版本目录(一般最新版,这边以3.3.8为例),下载跟Qt的32位/64位对应的msi
下载后可以双击安装,不过这样的话以后还需要卸载,比较麻烦,这边提供一个比较干净的提取办法,在命令行运行:
msiexec /a <MSI文件> /qb TARGETDIR=<提取目录绝对路径>
比如:
msiexec /a mariadb-connector-c-3.3.8-win64.msi /qb TARGETDIR=C:\Downloads\mariadb
这样就会把msi里的文件复制到目录:
(2) MySQL Connector/C
如果坚持要使用MySQL的库,MySQL单独的Connector/C已经不再提供新版,最后版本为2017年7月的6.1.11,下载地址:https://downloads.mysql.com/archives/c-c/
这边不用下载msi安装包或者debug包,就下载跟Qt的32位/64位对应的zip即可
(3) MySQL Community Server
如果坚持要使用最新的MySQL,现在的Connector/C包含在Server的包中,下载地址:https://dev.mysql.com/downloads/mysql/,跟上面一样下载zip即可
由于8.0+已经只提供64位,所以如果需要32位的只能下载5.7+
(你可能会看到安装程序下载页面8.0有32位的,但那只是安装程序本身是32位,实际安装的MySQL Server还是64位的)
2. Qt源码
确保有Qt版本对应的源码,比如安装Qt时同时安装了Source,或者单独下载解压对应源码包
可以找到<Qt源码目录>\qtbase\src\plugins\sqldrivers\mysql
3. 打开命令行窗口并设置编译环境
常见的编译方法有使用命令行编译和使用Qt Creator,这边推荐使用命令行,最为干净
(1) MinGW版
MinGW版比较简单,只需要从安装的Qt开始菜单打开即可:
打开后:
如果Qt没有开始菜单,也可以打开Windows的命令提示符,然后运行:
<Qt目录>\bin\qtenv2.bat
(2) MSVC版
MSVC版如果也用上面的办法打开的话,会显示:
这边意思就是它并没有设置好VC的环境,还需要手动调用VC的环境设置文件,而调用这个文件还要注意参数,所以相比用Qt这个菜单,推荐还是从VC的开始菜单打开,例如:
如果Qt版本是32位的就打开x86,如果是64位就打开x64,打开后再设置Qt的环境,运行
<Qt目录>\bin\qtenv2.bat
结果如图:
4. 创建并进入编译目录
编译Qt源码时最好保持源目录的干净,因此推荐不要在源码目录进行接下来的操作,而是新建一个编译目录,然后在命令行cd进去
其他部分链接: