ubuntu下编译Qt5的mysql驱动libqsqlmysql.so

遇到问题:

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7

很明显缺驱动呗,但是百度了很久缺没有解决问题,所以整理记录一下。方法简单来说就是把libqsqlmysql.so放到qt的安装目录的sqldrivers文件夹下,如Qt5.9.2/5.9.2/gcc_64/plugins/sqldrivers中,进入该目录发现果然没有libqsqlmysql,可能是qt为了推广自己的数据库sqlite吧。那么这个libqsqlmysql.so如何获取?最靠谱的方法还是源码编译。

1 安装qt时勾选源码

2 进入qt安装目录中的Qt5.9.2/5.9.2/Src/qtbase/src/plugins/sqldrivers/mysql路径,修改mysql.pro文件。

INCLUDEPATH+=/usr/include/mysql
LIBS+=-L/usr/lib/x86_64-linux-gnu -lmysqlclient
摘自他人

3 注释文件Qt5.9.2/5.9.2/Src/qtbase/src/plugins/sqldrivers/qsqldriverbase.pri中的include那行。

4 在mysql文件夹中执行qmake。如果提示缺目录则手动创建并赋权。

5 执行make。注意看最后给出的位置信息,如../plugins/sqldrivers,即Qt5.9.2/5.9.2/Src/qtbase/src/plugins/sqldrivers/plugins/sqldrivers

6 这个文件放到目录Qt5.9.2/5.9.2/gcc_64/plugins/sqldrivers后,就OK了。


参考文献:

  1. https://www.cnblogs.com/zhangnianyong/p/11458033.html
  2. https://www.cnblogs.com/yongqiang/p/6121515.html
  3. https://blog.csdn.net/zhang2010kang/article/details/41673951

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值