转载请注明原文链接http://www.cnblogs.com/majianming/p/5925105.html
在学习qt过程中,遇到了编译oracle驱动的问题,在开源协议下没有编译好的,那就只能自己来了
虽然网上已经有了很多这种文章 但是大多都用不了,摊手.jpg
 
win7 (64bit)  oracle 11g (r2)  qt (5.60/5.70) 通过
 
qt  oci源码目录
D:\Qt5.7.0\5.7\Src\qtbase\src\plugins\sqldrivers\oci
 
直接双击打开oci.pro文件
切换到release模式(暂时未发现和debug模式区别)
执行,弹出对话框,不用理会
 
 
然后就会发现
D:\plugins\sqldrivers
下生成
这几个文件 拷贝到
D:\Qt5.7.0\5.7\msvc2015_64\plugins\sqldrivers
下就可以了
 
 
写在之前 后来发现不用那么麻烦 巧合的才有了上面的

 感谢原博主 http://blog.csdn.net/fm0517/article/details/4587762  在博主的基础之上修改了一些
 
在开始之前 先定义几个目录
oracle目录
 
include     D:\oracle\product\11.2.0\dbhome_1\OCI\include
lib         D:\oracle\product\11.2.0\dbhome_1\OCI\lib\MSVC
 
qt  oci源码目录
 
D:\Qt5.7.0\5.7\Src\qtbase\src\plugins\sqldrivers\oci
 
qmake 目录
 
D:\Qt5.7.0\5.7\msvc2015_64\
 
nmake 目录 64bit
 
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\
nmake 目录 32bit
 
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\
 
 
打开cmd 依次输入
 
set INCLUDE=D:\oracle\product\11.2.0\dbhome_1\OCI\include;%INCLUDE%
set LIB=D:\oracle\product\11.2.0\dbhome_1\OCI\lib\MSVC;%LIB%
 
切换到oci源码目录
 
 
cd D:\Qt5.7.0\5.7\Src\qtbase\src\plugins\sqldrivers\oci
 
执行qmake oci.pro
 
应该会出现,如果没有跳到下一步
这是因为qmake文件不在你的系统path环境变量之中,这里采用简单的设置方法,直接执行
D:\Qt5.7.0\5.7\msvc2015_64\bin\qmake.exe oci.pro
 
执行之后没有提示
 
接下来执行nmake
 
应该提示
用同样的方法执行时
 
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\nmake.exe
 
会出现识别不了空格的情况
 
这个也不难,先把nmake.exe所在目录设置到环境变量中 执行
 
set path=D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\;%path%
 
然后再执行nmake 会出现
这样的提示
好了,打开qt Creator
打开oci.pro所在目录
 
D:\Qt5.7.0\5.7\Src\qtbase\src\plugins\sqldrivers\oci
配置全选 不用运行
然后就会发现
D:\plugins\sqldrivers
下生成
这几个文件 拷贝到
D:\Qt5.7.0\5.7\msvc2015_64\plugins\sqldrivers
下就可以了
转载请注明原文链接http://www.cnblogs.com/majianming/p/5925105.html

qt (5.60/5.70) 编译 QOCI 驱动的更多相关文章

  1. Qt 中 Oracle 数据库 QOCI 驱动问题及解决

    Qt 中 Oracle 数据库 QOCI 驱动问题及解决是本文要讲述的问题,用Qt开发Oracle程序时,常会遇到QOCI驱动问题,主要表现为程序运行时出现下面的错误. QOCI driver not ...

  2. QT编译Mysql驱动问题及解决方案

    默认情况下,qt 并没有自带mysql的数据库插件,需要自己编译先安装mysql server ,运行setup.exe时选择自定义安装,安装目录设为"D:\mysqldev"不要 ...

  3. Qt5.5.1和Qt5.3.2编译OCI驱动教程及验证方法

    我们都知道oracle数据库的强大,并且好多企业或者教学用到数据库时都会推荐使用.但是Qt因为版权问题没有封装oracle数据库专用驱动,网上也有一大堆说法和教程,但是或多或少的都有问题.下面废话不多 ...

  4. Qt5编译oracle驱动教程

    我们都知道oracle数据库的强大,并且好多企业或者教学用到数据库时都会推荐使用.但是Qt因为版权问题没有封装oracle数据库专用驱动,网上也有一大堆说法和教程,但是或多或少的都有问题.下面废话不多 ...

  5. linux下编译运行驱动

    linux下编译运行驱动 嵌入式linux下设备驱动的运行和linux x86 pc下运行设备驱动是类似的,由于手头没有嵌入式linux设备,先在vmware上的linux上学习驱动开发. 按照如下方 ...

  6. hisi3559的usb无线网卡驱动(rtl8192cu)(一条龙服务:内核编译、驱动编译、iw等工具编译)

    usb无线网卡驱动(rtl8192cu) 内核编译.驱动编译.iw等工具编译  (哈哈,如果有其他问题,麻烦留言:) 环境 板卡:hi3559av100(arm64) 交叉编译链:aarch64-hi ...

  7. QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

  8. linux下安装编译网卡驱动的方法

    安装linux操作系统后发现没有网卡驱动,表现为 system → Administration → Network下Hardware列表为空. 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网 ...

  9. RedHat5.8 编译内核驱动 合成initrd.img

    /******************************************************************* * RedHat5.8 编译内核驱动 合成initrd.img ...

随机推荐

  1. C#并行编程-并发集合

    菜鸟学习并行编程,参考<C#并行编程高级教程.PDF>,如有错误,欢迎指正. 目录 C#并行编程-相关概念 C#并行编程-Parallel C#并行编程-Task C#并行编程-并发集合 ...

  2. 发布iOS应用程序到苹果APP STORE完整流程

    参考:http://blog.csdn.net/mad1989/article/details/8167529(xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)) http ...

  3. Android 代码混淆之部分类不混淆的技巧

    在编写Android程序之后,我们通常要代码进行混淆编码,这样才能保证市场上我们的应用不会被别人进行反编译,然后破解,所以此时需要在发布正式版本的时候,有一些类事不能混淆的,比如实现了 Seriali ...

  4. EasyUI Datagrid Datetime(EasyUI DataGrid 时间格式化)

    EasyUI DataGrid 时间格式化 方法一: var Common = { //EasyUI用DataGrid用日期格式化 TimeFormatter: function (value, re ...

  5. Python的闭包

    Python的闭包 闭包概念都是一样的,实现机制一样,看看下面的代码是不是和javascript很像 def generate_counter(): cnt = [0] def count_one() ...

  6. 自定义Image自动切换图像控件

    做这么一个控件,图片自动切换,形成动画效果. 随便的码码,码完发现东西太少了,不过还算完善. public class MyPictureBox : PictureBox { Timer timer ...

  7. 经典String str = new String("abc")内存分配问题

    出自:http://blog.csdn.net/ycwload/article/details/2650059 今天要找和存储管理相关的一些知识,网上搜了半天也没有找到完善的(30%的程度都不到),没 ...

  8. KnockoutJS 3.X API 第四章 表单绑定(9) value绑定

    目的 value绑定主要用于DOM元素给视图模型赋值用的.通常用于<input><select><textarea>等元素. value绑定与text绑定的区别在于 ...

  9. Tcl Tk Introduction

    Tcl Tk Introduction eryar@163.com 摘要Abstract:Tcl/Tck脚本可以很容易实现用户自定义的命令,方便的创建图形化的用户界面GUI,所以Tcl和Tk的应用领域 ...

  10. struts2 OGNL表达式

    一.OGNL OGNL是Object-Graph Navigation Language的缩写,全称为对象图导航语言,是一种功能强大的表达式语言,它通过简单一致的语法,可以任意存取对象的属性或者调用对 ...