# MySQLDriverCompileForQt **Repository Path**: dami0/MySQLDriverCompileForQt ## Basic Information - **Project Name**: MySQLDriverCompileForQt - **Description**: No description available - **Primary Language**: Unknown - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-17 - **Last Updated**: 2024-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 前言 因为版权问题,Qt并没有内置编译好的mysql驱动,当sql模块尝试加载QMYSQL库会提示 > QSqlDatabase: QMYSQL driver not loaded windows平台需手动编译驱动mysql驱动,本方案即为解决此编译问题。 ubuntu平台安装mysql plugin: > sudo apt install libqt5sql5-mysql centos平台安装mysql plugin: > sudo yum install qt5-qtbase-mysql ## 准备 ### 下载MySQL Connector/C https://downloads.mysql.com/archives/c-c/?version=6.1.11&os=src Operating System选择Microsoft Windows - 64位编译器选择**Windows (x86, 64-bit), ZIP Archive**(mysql-connector-c-6.1.11-winx64.zip) - 32位编译器选择**Windows (x86, 32-bit), ZIP Archive**(mysql-connector-c-6.1.11-win32.zip) 本工程内已经包含6.1.11版本64位和32位 ### 准备sqldrivers源码 sqldrivers源码位于QTDIR/QTVERSION/Src/qtbase/src/plugins目录,复制sqldrivers目录到本工程根目录内。本工程仅包含一个空的sqldrivers目录,需自行覆盖。 给不同编译器版本编译的mysql库需要用对应版本内的sqldrivers源码 ## 编译 1. 使用qtcreator打开qt_mysql_driver目录内sqldrivers.pro工程文件 2. 使用和sqldrivers版本一直的编译套件配置 3. 推荐选择release模式 4. 编译 编译完成后即可在 编译输出目录/plugins/sqldrivers 目录内qsqlmysql.dll和qsqlmysqld.dll 其中qsqlmysql.dll对应release环境,qsqlmysqld.dll对应debug环境。 **一次编辑即可产生release|debug需要的文件,不需要切换工程到debug模式再次编译** ## 开发使用 (MYSQL8DIR表示mysql8程序安装目录,没有安装也无妨,用mysql-connector-c-6.1.11下的文件即可) 1. 复制编译输出目录的qsqlmysql.dll、qsqlmysqld.dll到QTDIR/QTVERSION/对应编译Kit/plugins/sqldrivers下 2. 复制MYSQL8DIR/lib或者mysql-connector-c-6.1.11-win32|winx64/lib下的libmysql.dll到QTDIR/QTVERSION/对应编译Kit/bin 3. 复制MYSQL8DIR/lib或者mysql-connector-c-6.1.11-win32|winx64/lib下的libmysql.lib到QTDIR/QTVERSION/对应编译Kit/lib 4. 复制MYSQL8DIR/bin下的libeay32.dll和ssleay32.dll到QTDIR/QTVERSION/对应编译Kit/bin ## 鸣谢 本工程是在 https://github.com/thecodemonkey86/qt_mysql_driver 的基础上进一步完善编译过程,使编译傻瓜化。