Qt编译PostgreSQL数据库驱动

Qt编译PostgreSQL数据库驱动,第1张

概述走了太多弯路了,晚上试了两个多小时,最后才在一位兄弟的帖子的帮助下搞定。 他的思路挺好的, 直接把postgresql的include目录和lib目录拷出来。 另外修改psql.pro文件时候, 注意LIBS+= './psql_lib/libpq.lib',  注意要把具体的lib文件名加上。 然后直接 qmake, 下一步,不知道为什么 要make debug和make release分开运行

走了太多弯路了,晚上试了两个多小时,最后才在一位兄弟的帖子的帮助下搞定。

他的思路挺好的, 直接把postgresql的include目录和lib目录拷出来。

另外修改psql.pro文件时候, 注意liBS+= './psql_lib/libpq.lib',注意要把具体的lib文件名加上。

然后直接 qmake,

下一步,不知道为什么 要make deBUG和make release分开运行

make

然后把生成的文件拷贝到sqldrivers目录下去即可。


此文档针对windows下Qt Creator + Qt SDK用户,开发环境配置参见本人其他博文

qt由于授权许可的限制,Qt的开源版本没有提供所有数据库驱动程序。免费下载的中只含有QsqlITE也就是sqlite的驱动程序,要想与MysqL或oracle等连接需要自己编译其驱动。 由于种种问题,经历各种重装,各种失败,本人用了两天才成功用qt连接上了MysqL数据库。(看网上其他教程都是分分钟搞定-_-!!)在这里也写一下自己的经历。 下边开始正文: 一.下载MysqLhttp://dev.mysql.com/downloads/目前最新版本5.5。 二.安装MysqL安装时不能选择Typical型,这样会缺少库文件(include和lib文件夹)。啥都不管直接选择Full型。 三.将MysqL安装目录下的include和lib两个文件夹拷贝到qt.7.4\src\plugins\sqldrivers\MysqL下。可以自己新建一个目录如MysqLlib。 四.修改MysqL.pro文件,在第二行添加如下内容 INCLUDEPATH+= "./MysqLlib/include" liBS+="./MysqLlib/lib/libMysqL.lib" 五.将QT的bin目录和mingw的目录都添加到环境变量的path中。 六.运行qt4.7.4 Command Prompt 输入以下命令(路径自己注意修改) cdqt\4.7.4\src\plugins\sqldrivers\MysqL qmake mingw32-makerelease mingw32-makedeBUG 执行qmake后没有返回结果,只是在MysqL目录下生成了deBUG和release的makefile文件Makefile.DeBUG和Makefile.Release。 全部执行完后,将release下的libqsqlMysqL4.a,qsqlMysqL4.dll和deBUG下的libqsqlMysqLd4.a,libqsqlMysqLd4.dll拷贝至 QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers 目录下 七.将MysqL的库文件libMysqL.dll拷贝到QtSDK\Desktop\Qt\4.7.4\mingw\bin目录下
接下来运行一个例子看驱动是否装好: 新建一个qt gui控制台项目sqltest 在sqltest.pro中加入QT+=sql 接着修改main.cpp如下

#include <QtCore/QCoreApplication>

#include <Qtsql>intmain(int argc,char *argv[]){

QCoreApplication a(argc,argv);

qDeBUG()<< "Available drivers:";

QStringList drivers = QsqlDatabase::drivers();

foreach(QStringdriver,drivers)qDeBUG() << "\t "<<driver;

qDeBUG()<< "End";

return a.exec();

}

总结

以上是内存溢出为你收集整理的Qt编译PostgreSQL数据库驱动全部内容,希望文章能够帮你解决Qt编译PostgreSQL数据库驱动所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/1176828.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-02
下一篇2022-06-02

发表评论

登录后才能评论

评论列表(0条)

    保存