你的位置:首页 > 软件开发 > 操作系统 > CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

发布时间:2015-06-28 00:00:20
用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然。  用ldd命令分析一下,libmysqlclient_r.so.16 => not found ,后明显libmysqlclie ...

  用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然。

  用ldd命令分析一下,libmysqlclient_r.so.16 => not found ,后明显libmysqlclient_r.so.16 缺少另一个共享库,他们是依赖关系,解决了这个问题qt才能真的连接到mysql数据库。而我的/usr/lib64/下的共享库版本比较高是libmysqlclient.so.18,想到了一个比较投机的想法ln创建符号链接,然而这并没有什么卵用。

  让我哭笑不得是QT5.5是我从官网下载的,居然依赖的是低版本,你们编译的时候能不能不偷懒啊,估计他们直接从低版本拷贝的libqsqlmysql.so,没办法了吗?显然不是,打开qt官网下载源码,自己编译。下载过程略过,非常好找 http://download.qt.io/official_releases/qt/5.4/5.4.2/submodules/ (暂时没有qt5.5的源码),找到qtbase那个大概60M。MySql驱动的路径为qtbase/src/plugins/sqldrivers/mysql/。

  • qmake
  • make

  然而这还没有完,make的过程中又找不到动态库了:

/usr/bin/ld: cannot find -lz/usr/bin/ld: cannot find -lssl/usr/bin/ld: cannot find -lcrypto

原标题:CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

关键词:MYSQL

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录