QT6版本以上没有mysql的动态库,需要自己编译,网上找了好多教程都没有成功编译,后面结合多个教程慢慢倒腾 终于成功了,具体操作步骤如下:

1,首先下载安装QT的时候 需要安装它的源码

2,安装完成后需要设置cmake ninja环境变量

3,CD进入你QT的mysql目录 我的是:D:\Qt\6.4.3\msvc2019_64\plugins\sqldrivers

cd /d D:\Qt\6.4.3\Src\qtbase\src\plugins\sqldrivers

4,调用 你VS2019或者2022的vcvars64.bat

call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"

结果如下

**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.5.2
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

5,调用cmake ninjia命令进行编译mysql debug动态库

call D:\Qt\6.4.3\msvc2019_64\bin\qt-cmake.bat -G "Ninja" . -DMySQL_INCLUDE_DIR="C:\Program Files\MySQL\MySQL Server 8.0\include" -DMySQL_LIBRARY="C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib" -DCMAKE_INSTALL_PREFIX="D:\Qt\6.4.3\msvc2019_64"

其中-DMySQL_INCLUDE_DIR="C:\Program Files\MySQL\MySQL Server 8.0\include"你安装的MYSQL的路径

-DMySQL_LIBRARY="C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib"

-DCMAKE_INSTALL_PREFIX="D:\Qt\6.4.3\msvc2019_64"  你QT MSVC2019-64路径

结果如下:

D:\Qt\6.4.3\Src\qtbase\src\plugins\sqldrivers>call D:\Qt\6.4.3\msvc2019_64\bin\qt-cmake.bat -G "Ninja" . -DMySQL_INCLUDE_DIR="C:\Program Files\MySQL\MySQL Server 8.0\include" -DMySQL_LIBRARY="C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib" -DCMAKE_INSTALL_PREFIX="D:\Qt\6.4.3\msvc2019_64"
-- The CXX compiler identification is MSVC 19.35.32215.0
-- The C compiler identification is MSVC 19.35.32215.0
-- The ASM compiler identification is MSVC
-- Found assembler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE-- Configuration summary shown below. It has also been written to D:/Qt/6.4.3/Src/qtbase/src/plugins/sqldrivers/config.summary
-- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations.-- Configure summary:Qt Sql Drivers:DB2 (IBM) .............................. noInterBase .............................. noMySql .................................. yesOCI (Oracle) ........................... noODBC ................................... yesPostgreSQL ............................. noSQLite ................................. yesUsing system provided SQLite ......... no-- Configuring done
-- Generating done
-- Build files have been written to: D:/Qt/6.4.3/Src/qtbase/src/plugins/sqldrivers

5,输入ninja指令:

ninja

结果:

6,输入ninja install

ninja install

结果:

这样就编译完成了debug的动态库,其路径在 D:\Qt\6.4.3\msvc2019_64\plugins\sqldrivers

7,继续编译release的mysql库

call D:\Qt\6.4.3\msvc2019_64\bin\qt-cmake.bat -G "Ninja" . -DMySQL_INCLUDE_DIR="C:\Program Files\MySQL\MySQL Server 8.0\include" -DMySQL_LIBRARY="C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.lib" -DCMAKE_INSTALL_PREFIX="D:\Qt\6.4.3\msvc2019_64" -DCMAKE_BUILD_TYPE=Release

和debug的不同之处在于 最后面加了一句 -DCMAKE_BUILD_TYPE=Release

结果如下:

继续输入ninja指令

ninja

继续输入 ninja install

 最终生成的DLL全部在D:\Qt\6.4.3\msvc2019_64\plugins\sqldrivers路径下

8,用QT写一个简单的测试demo,调用OK

windows10下QT6.4.3编译qsqlmysql Debug+Release动态库相关推荐

  1. Windows10下QT6(C++)+OpenCV4环境配置及安装

    文章目录 1. 安装Qt 2. 安装Cmake 3. 下载并编译OpenCV4 4. Qt6配置OpenCV 5. 资源 参考博主文章 Windows10下QT6.0(C++)+OpenCV4环境配置 ...

  2. linux centos 编译luabind-0.9.1 动态库 静态库

    luabind下载 luabind-0.9.1 下载地址 :http://download.csdn.net/download/yzf279533105/10109861 编译步骤 一. 需先编译好l ...

  3. win7 VS2008 编译luabind-0.9.1 动态库 静态库

    一 luabind下载 luabind-0.9.1 下载地址 :http://download.csdn.net/download/yzf279533105/10109861 二  Windows下编 ...

  4. ndk编译出来的executable动态库入口函数的参数错乱

    早些时间用ndk编译带main入口函数的动态库,测试可运行.今天要作它用时,发现在这个入口函数并没有传入正确的参数. hello.cpp有main函数,用ndk分别编译成可执行文件和动态库文件,使两者 ...

  5. linux系统c++编译连接过程,动态库与静态库

    https://www.cnblogs.com/ucas/p/5778664.html(linux系统c++编译连接过程) http://www.cnblogs.com/skynet/p/337285 ...

  6. 在windows上编译apr等相关动态库

    一.首先参考链接:https://www.cnblogs.com/dongc/p/9281512.html 以下为相关截图和细节 1.下载apr相关库tar包 2.cmake配置apr目录 最后在E: ...

  7. 如何编译各平台使用的库-以编译tolua为例

    转载注明出处: https://www.jianshu.com/p/5a35602adef8?appinstall=0 做U3D手机游戏,最热门的技术组合是c#+lua,使用lua是因为可以热更新,而 ...

  8. 2.Linux下程序代码的编译

    一.编译工具 前言 1)编译器和目标程序运行在相同架构的编译过程,被称为本地编译. 2)编译器和目标程序运行在不同架构的编译过程,被称为交叉编译. 为什么需要交叉编译?因为编译过程往往需要很大的算力和 ...

  9. c语言与qt编写安卓,Windows下Qt for Android 编译安卓C语言可执行程序

    作为 C/C++ 程序员,有时候我们希望在安卓上运行从 C/C++ 生成的可执行程序,而不是在 Java 中通过 jni 的方式来调用 C 动态库.有两个途径可以达到这个目的:一 作为 C/C++ 程 ...

最新文章

  1. ASP.NET 获取上一个页面的Url链接
  2. 【机器学习】KNN算法代码练习
  3. 50多个强大的jQuery插件应用实例
  4. sap 标准委外和工序委外_SAP FICO零基础学习_0035_标准成本估算-主数据-物料主数据...
  5. 华润置地php面试题_从一流到顶流|2020华润置地与沈阳一起美好
  6. 前端学习(1524):ES6模块导入和导出
  7. 决策树会有哪些特性?
  8. 四种常见 Git 工作流比较
  9. python模拟给qq发消息,python模拟QQ聊天--socket通信
  10. javascript有关this的那些事(某渣提出的问题)
  11. su 与 su - 区别
  12. 当第一资本、高盛、摩根士丹利等巨头纷纷启用CDO时,您想到了什么?
  13. 好未来表格识别大赛 | 获奖名单新鲜出炉!
  14. 湖南计算机office三月份,2020年3月计算机二级MS Office考试怎么准备
  15. 用asp.net发送电子邮件
  16. HM-16.0编码过程:将YUV文件编码成HEVC格式的码流
  17. C++GUI之wxWidgets(1)-安装与测试
  18. 中华五千年的朝代顺序
  19. 数据分析课后作业--信用卡客户风险评价(代码)
  20. 2021年大数据发展十大趋势:抓准一个,就能掌握先机!

热门文章

  1. 英语日常口语对话(7)
  2. matlab print 保留颜色,科学网—解决matlab saveas printf保存图片时 colorbar中的字体颜色发生改变 - 肖鑫的博文...
  3. java浏览器无界面后台截屏工具
  4. 计算机中丢失quartz dll,win10系统提示缺少quartz.dll文件的解决方法
  5. 计算机职称考试入户,揭秘!2020年考什么职称更容易入户广州?
  6. 交叉编译-20:gettext移植到君正平台
  7. JavaEE 企业级分布式高级架构师(十五)FastDFS分布式文件服务器(1)
  8. 【Redis】redis cluster模式实现双机房容灾切换
  9. 逃避不一定躲得过,面对不一定最难过
  10. time_t c语言 2038,什么是2038问题?