如何编译orcal数据库插件

一、Qt

下载最新的Qt版本,当时是Qt5.3.1,我下载的是mingw版本的 qt-opensource-windows-x86-mingw482_opengl-5.3.1.exe 安装,可以默认安装,也可以全部勾上安装,看个人喜好!
安装好后,我们设置一下环境变量,因为编译时需要用到qmake与mingw32-make,所以我们分别去设置qmake环境变量 path中添加 D:\Qt\Qt5.3.1\5.3\mingw482_32\bin 每个人安装路径不一样,自己照着去找
mingw环境变量 path中添加 D:\Qt\Qt5.3.1\Tools\mingw482_32\bin
配置好后,去cmd下输入qmake -v 与mingw32-make -v 看看版本号 看看输出路径是不是我们想要的,因为很多人电脑上都装了好多版本的Qt,比如我就装了5个版本的Qt,这些小细节看起来微不足道,但是编译时出问题了你还真不知道从哪下手!!切记。



二、oracle

我编译的时候,oracle 10g 官网已经不提供下载了,网上找了一圈,没下成功,那就下个11g的,下个客户端 win32_11gR2_client.zip
安装------------------安装时选中 管理员的选项,然后一路 next 需要点时间 或者自动google去看安装教程,我们不作重点



三、Qt 编译oracle

打开Qt5.3.1 的consloe如果是win7 安装在c盘下面,那最好 用管理员的权限打开吧




然后分别执行下面的命令:


[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. set INCLUDE=%include%;G:\app\fei\product\11.2.0\client_1\oci\include;D:\Qt\Qt5.3.1\Tools\mingw482_32\include  
  2.   
  3. set LIB=%lib%;G:\app\fei\product\11.2.0\client_1\oci\lib\msvc  
  4.   
  5. cd D:\Qt\Qt5.3.1\5.3\Src\qtbase\src\plugins\sqldrivers\oci  
  6.   
  7. qmake oci.pro  
  8.   
  9. mingw32-make  


G:\app\fei\product\11.2.0\client_1\oci\include 为你安装的oracle的路径

D:\Qt\Qt5.3.1\Tools\mingw482_32\include 为你的mingw路径


我编译过程报错,仔细看错,莫名其妙的链接到 VS 下面去了,然后我们去我的环境变量下面去看,发现我以前建了两个 环境变量 include 与 lib 这刚好和上面的冲突了,我把他们改了个名字,等编译完后在改回来,以后破坏别的环境

等了2秒左右就编译完了,感觉太快了,以前编译firebird时好久。

这个时候我们只需要去D:\Qt\Qt5.3.1\5.3\Src\qtbase\plugins\sqldrivers 下面把 libqsqloci.a、libqsqlocid.a、qsqloci.dll、qsqlocid.dll 这四个文件拷贝到D:\Qt\Qt5.3.1\5.3\mingw482_32\plugins\sqldrivers下面,大家可以在这个目录下面看到好多的数据库的驱动

下面我们写个简单程序看看现在Qt有多少个可用的数据库驱动来验证我们的编译是否成功


[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. #include <QCoreApplication>  
  2.   
  3. #include <QSqlDatabase>  
  4. #include <QStringList>  
  5. #include <QDebug>  
  6.   
  7. int main(int argc, char *argv[])  
  8. {  
  9.     QCoreApplication a(argc, argv);  
  10.   
  11.     QStringList lists = QSqlDatabase::drivers();  
  12.   
  13.     for(int i = 0 ;i < lists.size(); ++ i)  
  14.     {  
  15.         qDebug() << lists.at(i);  
  16.     }  
  17.     return a.exec();  
  18. }  

记得在pro中加上 QT += sql

看下结果如何:


大家可以看到 里面已经有了 QOCI ,但是大家发现没有------->>>>> QMYSQL 出现了,原来Qt5 已经默认把QMYSQL加进来了,也就是说现在Qt自带的数据库多了一个mysql了,太棒了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值