ubuntu 18.04 qt 使用mysql 数据库

16 篇文章 1 订阅

linux qt 使用mysql 数据库

问题:

使用qt连接数据库时,总是报如下错误:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QPSQL QPSQL7

解决方法:

一.版本

ubuntu 18.04 , Mysql 8.0.21 , qt5.12.9

二.步骤

1.安装各种包
sudo apt update
sudo apt-get install libglu1-mesa-dev
sudo apt-get install build-essential
sudo apt-get install libmysqlclient-dev
sudo apt-get install libssl-dev

2.(qt安装时记得要安装源码“Sources”)进入qt源码目录:/home/vxlink/Qt/5.12.9/Src/qtbase/src/plugins/sqldrivers/mysql/ 。修改mysql.pro,如下图所示。
在这里插入图片描述
3.执行qmake生成makefile
指令为:sudo /home/vxlink/Qt/5.12.9/gcc_64/bin/qmake “INCLUDEPATH+=/usr/include/mysql” “LIBS+=-L/usr/lib/x86_64-linux-gnu/ -lmysqlclient” mysql.pro
指令批注如下:
在这里插入图片描述
可以通过指令 whereis 查找mysql.h和 mysqlclient.so的路径。
在这里插入图片描述
如果找不到,参考步骤1,安装各种库

4.sudo make
5.sudo make install
如下图所示,成功编译出了库
在这里插入图片描述
6.成功啦,qt可以连接mysql数据库啦!写代码测试ok,记得在pro文件加上QT += sql
在这里插入图片描述

三.挖坑经历

1.网上查找了资源,发现方法都大同小异,但是按照网友的方法,就是不能编译通过,反正各种坑。后面发现找对版本很重要!我原来用的是qt 5.12.1,按照我上面写的步骤,qmake时可以通过,但是第4步make时,就报各种错了
添加链接描述在这里插入图片描述
后来重新安装了版本qt5.12.9,就没有问题了。
2.另外,试了一下,qt5.12.9编出来的库,放在qt5.12.1环境下,是不能用的直接报错“版本不兼容”。

参考资料
Qt5.12版本编译MySQL驱动
linux qt 5.12.6 编译mysql驱动
Linux平台下解决Qt5连接mysql数据库的问题

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不是很大锅

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

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

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

打赏作者

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

抵扣说明:

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

余额充值