ubantu下QT连接数据库mysql
===我本想利用QTcreator连接数据库,然后交叉编译,在运行到arm板子上面,由于Qtcreator的版本是4.8.5,它不像QT5版本集成了很多kit或者编译工具gcc,所以,在使用QTcreator4-8-5连接mysql时候,总是出现QMYSQL驱动加载不上,其原因是因为对应的文件夹中没有合适的驱动,在网上看了很多文章,说自己要去找源码重新编译mysql驱动,我在折腾了很久之后,还是没有成功,但是我自己知道问题出在哪里.
===这里其实主要看你的Qt的gcc中的…plugins/sqldrivers中是否含有libqsqlmysql.so文件,使用你要先去你安装的qt(gcc)路径里面 ls一下,看看是否含有libqsqlmysql.so文件,
要是你都连接不上sql的话,一般都是没有,(我这里是我已经复制过来的,是从)
ma@MJ:/soft_ma/gcc4.8/qt-everywhere-opensource-src-4.8.5/plugins/sqldrivers$ ls
libqsqlite.so libqsqlmysql.so
===你可以使用这个命令locate libqsqlmysql.so去查看是否含有该文件
majun@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/include/QtSql$ locate libqsqlmysql.so
/soft_majun/Qt4.2/4.2.2/lib/Qt/plugins/sqldrivers/libqsqlmysql.so
/soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/libqsqlmysql.so
/soft_majun/Qt5.11.0/Tools/QtCreator/lib/Qt/plugins/sqldrivers/libqsqlmysql.so
/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/plugins/sqldrivers/libqsqlmysql.so
/soft_majun/qt_softwar4.7/qtcreator-4.7.0/lib/Qt/plugins/sqldrivers/libqsqlmysql.so
/usr/lib/x86_64-linux-gnu/qt4/plugins/sqldrivers/libqsqlmysql.so
/usr/local/Trolltech/Qt-4.8.5/plugins/libqsqlmysql.so
这些都是我电脑里面的libqsqlmysql.so文件的位置,你要注意复制对应的版本问题
===如果有这个文件,那么你需要执行这一步,查看一下这个文件的所依赖的一些关系是否都是正确的
ma@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/plugins/sqldrivers$ ldd libqsqlmysql.so
./libqsqlmysql.so: /usr/lib/x86_64-linux-gnu/libQt5Sql.so.5: version `Qt_5_PRIVATE_API' not found (required by ./libqsqlmysql.so)
./libqsqlmysql.so: /usr/lib/x86_64-linux-gnu/libQt5Sql.so.5: version `Qt_5' not found (required by ./libqsqlmysql.so)
./libqsqlmysql.so: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.11' not found (required by ./libqsqlmysql.so)
./libqsqlmysql.so: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5_PRIVATE_API' not found (required by ./libqsqlmysql.so)
./libqsqlmysql.so: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5' not found (required by ./libqsqlmysql.so)
//看我这里的前面几个都是有问题的,使用我这个sql驱动使用不了,
linux-vdso.so.1 => (0x00007ffcaabc3000)
libQt5Sql.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Sql.so.5 (0x00007f660d66e000)
libQt5Core.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 (0x00007f660cdbb000)libmysqlclient.so.18 => /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 (0x00007f660c65b000)
//上面的这个之前也是找不到的,他提示 libmysqlclient.so.18 not found,
我是下在https://pkgs.org/download里面搜索下载的一个deb包之后,安装了就解决了
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f660c2d9000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f660bfd0000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f660bdba000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f660b9f0000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f660b7d6000)
libicui18n.so.55 => /usr/lib/x86_64-linux-gnu/libicui18n.so.55 (0x00007f660b374000)
libicuuc.so.55 => /usr/lib/x86_64-linux-gnu/libicuuc.so.55 (0x00007f660afe0000)
libpcre16.so.3 => /usr/lib/x86_64-linux-gnu/libpcre16.so.3 (0x00007f660ad7a000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f660ab76000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f660a865000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f660a65d000)
/lib64/ld-linux-x86-64.so.2 (0x00007f660d4a4000)
libicudata.so.55 => /usr/lib/x86_64-linux-gnu/libicudata.so.55 (0x00007f6608ba6000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f6608936000)
===如果你把上面的这些问题都解决了 就像这样:
ma@MJ:/soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers$ ldd libqsqlmysql.so
linux-vdso.so.1 => (0x00007ffcb7ba6000)
libQt5Sql.so.5 => /soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/./../../lib/libQt5Sql.so.5 (0x00007f207e683000)
libQt5Core.so.5 => /soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/./../../lib/libQt5Core.so.5 (0x00007f207df29000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f207dd0c000)
libmysqlclient.so.18 => /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 (0x00007f207d7c9000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f207d447000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f207d13e000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f207cf28000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f207cb5e000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f207c944000)
libicui18n.so.56 => /soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/./../../lib/libicui18n.so.56 (0x00007f207c4ab000)
libicuuc.so.56 => /soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/./../../lib/libicuuc.so.56 (0x00007f207c0f3000)
libicudata.so.56 => /soft_majun/Qt5.11.0/5.11.0/gcc_64/plugins/sqldrivers/./../../lib/libicudata.so.56 (0x00007f207a710000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f207a50c000)
libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007f207a30a000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f2079ff9000)
/lib64/ld-linux-x86-64.so.2 (0x00007f207eade000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f2079d89000)
一个问题都没有了 ,你就解决了连接sql的问题了
===由于我电脑上安装了好几个版本的gcc,所以我4-8-5版本的不行之后,直接去试了一下Qt5.5的,结果,能够直接连接sql,用同样的方法,去查看了下Qt5.5下面的对应的文件,发现,没有错误,而且存在,这也可能是它能够运行的原因吧,
这里也推荐一写其他值得看的https://www.cnblogs.com/yongqiang/p/6121515.html
很多是说去安装gcc的目录中的src中找到mysql驱动的源码,然后自己编译一下,在复制到对于的文件夹中,但是我还是没有搞出来,编译的过程中会出现我现在解决不了的问题,手动呜呜~~(>_<)~~
majun@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/src$ cd plugins/sqldrivers/
//先切换到gcc的安装目录的src中的plugins/sqldrivers文件夹中,然后继续下面的操作
majun@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/src/plugins/sqldrivers$ ls
db2 ibase Makefile mysql mysql.copy oci odbc psql qsqldriverbase.pri README sqldrivers.pro sqlite sqlite2 sqlite_symbian symsql tds
majun@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/src/plugins/sqldrivers$ cd mysql
majun@MJ:/soft_majun/gcc4.8/qt-everywhere-opensource-src-4.8.5/src/plugins/sqldrivers/mysql$ ls
main.cpp Makefile mysql.pro README
这里可以看到上面的一些源码,这里就需要用对应的qmake编译一下,
(可以使用qmake -v 查询下当前使用的qmake是哪个版本)有可能找不到mysql.h
这个头文件,可以百度看看怎么解决的~~~~(>_<)~~~~
虽然没有把它搞出来,但是知道了问题在哪里,且找到了Qt5.5能够连接数据库的方法.仅此记录下,方便以后解决问题
2018年08月27日19:56:00 失败是成功之母 加油!!!
ubantu下QT连接数据库mysql相关推荐
- 详解Ubuntu10.10下Qt连接Mysql数据库
转载自:http://mobile.51cto.com/symbian-273262.htm 详解Ubuntu10.10下Qt连接Mysql数据库是本文要介绍的内容,很详细的步骤,我们先来看内容. 第 ...
- qt mingw连接mysql_win下Qt连接MySql (mingw)
/*************************************************************************************************** ...
- linux mysql 开发环境_RedHat Linux下QT平台MySQL数据库开发环境配置
This doucment is about how to add MySQL driver into QT and about database connections 由于之前安装RedHat的时 ...
- linux 安装qt mysql库_Linux下QT平台Mysql数据库开发环境配置
This doucment is about how to add mysql driver into QT and about database connections 由于之前安装RedH ...
- Linux下QT平台Mysql数据库开发环境配置
This doucment is about how to add mysql driver into QT and about database connections 由于之前安装RedH ...
- mac下qt与mysql配置
打开终端 输入open -e .bash_profile 进行如上配置 输入source .bash_profile 进行生效 将libqsqlmysql.dylib拷贝到/Users/qiaozih ...
- qt连接mysql数据库 mac_Mac系统下Qt 4.8编译连接数据库(Oracle,MySql)
在Mac下成功编译了MySql和Oracle的数据库插件驱动,但遗憾的是在程序中无论如何也加载不了这两个驱动,也无法连接数据库.在环境变量中设置QT_DEBUG_PLUGINS=1, 再启动程序后Qt ...
- linux(ARM架构)下的mysql安装、QT连接mysql数据库(完整版)
一.安装MYSQL之前要先换源 二.安装MYSQL 1.安装 2.安装完成 3.安装后无法登陆 3.1 原因 3.2 登陆后切换database 3.3 修改密码(注意这里账号和密码是双引号) 3.4 ...
- 【QT 数据库专辑】【02】WIN7下搭建本地MYSQL数据库02 - 建立数据库的驱动程序-QT为例-完备版
前言: 前一段时间项目紧张的,调一个数据库,总是连不上MySQL,于是用QT自己的SQLlite,好像也是可以的.直到,朴树把猎户星座的专辑自己给推翻了,重新在11-15日又发行了一把,暗暗佩服!今天 ...
最新文章
- node版本升级for ubuntu
- 全球最小人工心脏在华中科大完成植入:58岁患者术后精神状态良好
- 一周内被程序员疯转5.6W次,最终被大厂封杀!
- SQL语言之DQL语言学习(一) 基础查询
- XHTML标签的嵌套规则
- IDEA: .java文件和.class不一致
- PAT-乙级-1034 有理数四则运算
- argo 现水下永动机器人_水下永动机器人现身
- 八类网线和七类网线的区别_Cat8 八类网线与超五类网线、六类网线、超六类网线及七类/超七类网线的区别...
- 基于Packet Tracer 的校园网络设计方案(计算机网络与通信技术课程实验)(二)——IP网络仿真配置
- Unity3D物理渲染算法研究【PBR】
- 工业机器人行业应用-3C行业塔式机箱来料分拣、贴标及包装线体
- 【4月电视剧网络关注度榜】《小舍得》登顶4月电视剧热度榜
- 大数据的处理是怎样的过程
- 生物信息之独孤九剑——awk
- python资产负债表_用Python清理雅虎财务资产负债表
- SylixOS ECS 启动过程
- Mt7628调试简记
- SE,SA和RD都代表什么
- oracle定时任务实例
热门文章
- Nat Commun:中国中医科学院黄璐琦院士/首都医科大学高伟教授团队联合解析雷公藤甲素生物合成关键C-14位羟化机制...
- 判定被7整除的简易方法
- 中链云 | IPFS入门知识(五)
- 基于STM32单片机的步数测量系统(免费开源)
- SVG排版 | 深色模式彩蛋
- 正则表达式re.S与re.M的区别
- 面试常问问题: 剖析ArrayList源码还不会? 看这篇就够啦 !
- 如何在PowerPoint中添加背景音乐
- bzoj1190梦幻岛宝珠
- 一个骗人的恶劣网站: GPS 定位好友 的传说 ( 其中一个域名是 ipl38.com 诈骗:利用手机号码GPS卫星追踪你的他(她)在什么位置