Ubuntu,QT5连接MySQL
用QT连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然。
用ldd命令分析一下,libmysqlclient_r.so.* => not found ,后明显libmysqlclient_r.so.* 缺少另一个共享库,他们是依赖关系,解决了这个问题QT才能真的连接到MySQL数据库。而我的/usr/lib64/下的共享库版本比较高是 libmysqlclient.so.18,想到了一个比较投机的想法ln创建符号链接,然而这并没有什么卵用。
PS:ldd:linux下分析打印可执行档依赖的共享库文件。
让我哭笑不得是QT5.5是我从官网下载的,居然依赖的是低版本,你们编译的时候能不能不偷懒啊,估计他们直接从低版本拷贝的libqsqlmysql.so,没办法了吗?显然不是,打开qt官网下载源码,自己编译。下载过程略过,非常好找 http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/ (暂时没有qt5.5的源码),找到qtbase那个大概60M。MySql驱动的路径为qtbase/src/plugins/sqldrivers/mysql/。
- qmake "INCLUDEPATH+=/usr/include" "LIBS+=-L/usr/lib -lmysqlclient_r" mysql.pro
(include为头文件“mysql.h”的位置,可用“ sudo find -name "mysql.h" ”找找看,lib为共享库到位置)
- make
- sudo make install
PS:如果没有没找到“mysql.h”文件,需要安装“mysql-libmysqlclient-dev”
sudo apt-get install libmysqlclient-dev
在QT的帮助手册中输入“SQL Database Drivers”,可查看其他数据库到连接方式
这样就能连接MySQL数据库了。
参考资料:
CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)
fatal error: mysql/mysql.h: No such file or directory 解决方法
Ubuntu,QT5连接MySQL的更多相关文章
- Ubuntu远程连接MySQL(connection refused)解决方法
一.判断ubuntu是否开启防火墙 sudo ufw status 开放防火墙3306端口 sudo ufw allow 3306 二.查看3306端口是否打开 注意:红色框框表示3306绑定的ip ...
- Qt5连接Mysql环境配置
已安装的环境:Mysql5.7 64bit ,Qt5.12 64bit. 到mysql官方下载mysql5.7 64bit的压缩包,解压,复制下图框内四个文件. 将四个文件复制到Qt安装目录下bin目 ...
- Ubuntu navicat 连接mysql:access denied for user 'root'@'localhost'
真是醉了,Ubuntu装了navicat后,准备在桌面建立图标不成,结果直接打开后连接mysql都不行,真坑,奈何远程连接就成,这就尬了,今天终于解决了 问题 我也百度了好几个方案,奈何解决不了,最后 ...
- QT5连接Mysql
摘要 在Qt 5中已经提供了对MySQL数据库的默认支持,要想使用该数据库,需要先进行数据库的安装, 这里我们介绍下在Windows系统中MySQL数据库的安装和简单使用. Qt如何利用Mysql ...
- Linux系统下 解决Qt5无法连接MySQL数据库的方法
Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get instal ...
- CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)
用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r ...
- Ubuntu jsp平台使用JDBC来连接MySQL数据库
Ubuntu 7.04 搭建Ubuntu jsp平台开发环境MySQL+tomcat+apache+j2sdk1.6在所有安装开始前先在Terminal中输入 rpm -q -a查看是否安装过rpm ...
- ubuntu虚拟环境virtualenv中djanggo连接mysql
在ubuntu服务器上安装MYSQLDB,执行:sudo apt-get install python-mysqldb, 若提示: ---------------------------------- ...
- c/c++使用VS2013连接MySQL与ubuntu下c链接mysql
vs连接数据库事实上就是将mysql数据库.h头文件接口.lib链接文件和dll运行文件增加到项目中.以下是配置怎样增加. 转于http://www.cnblogs.com/justinzhang/a ...
随机推荐
- Spring基础——一个简单的例子
一.学习版本 spring-framework-4.0.0 二.导入 jar 包: 三.在类路径下创建 Spring Config 文件:ApplicationContext.xml <?xml ...
- ok6410 android driver(11)
This essay, I go to a deeply studying to android HAL device driver program. According to the android ...
- ok6410 android driver(8)
In the past, we know how to create and run a simple character device driver on pc, goldfish and ok64 ...
- GitHub Extension for Visual Studio 2.0 is now available
GitHub Extension for Visual Studio 2.0 is now available We're pleased to announce that version 2.0 o ...
- 2015年最热门前端框架React 入门实例教程
现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...
- margin的使用方法与技巧
1.margin还可以用来做平移,作用类似translate哈哈.将元素设成absolute后就可以用margin随便平移他了,既不像relative那样要霸占空间,又不用为父元素设置relative ...
- javaweb学习总结(三十二)——JDBC学习入门
一.JDBC相关概念介绍 1.1.数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡 ...
- 重新想象 Windows 8 Store Apps (60) - 通信: 获取网络信息, 序列化和反序列化
[源码下载] 重新想象 Windows 8 Store Apps (60) - 通信: 获取网络信息, 序列化和反序列化 作者:webabcd 介绍重新想象 Windows 8 Store Apps ...
- kFreeBSD当前可以做的和不能做的
可以进行FAMP FreeBSD.Apache/Nginx.Mysql/PostGreSQL.PHP/Perl/Python 虚拟化 最易用的VirtualBox 无法安装 Java OpenJDK及 ...
- python-set集合类方法
s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])返回的是{11,22,33,44,'Tom','tony',77,2.5}(注意:返回的并不是一个字典,只是告 ...