转载请注明原文链接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. Atitit   发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化

    Atitit   发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化 大段内容务必要替换转义换行符号1 提交务必使用utf编码,否则解码后的可能缺失,是web serv ...

  2. win2008 强制删除故障集群配置

    在正常删除Cluster 节点之后,再添加节点时,报“节点已经加入群集”,无法加入,注册表信息删除后可正常移除Cluster服务,如下: win2008故障转移群集无法退出节点时 删除注册表中这两个后 ...

  3. Linux初学 - Elasticsearch环境安装

    下载 https://www.elastic.co/downloads/elasticsearch 安装 rpm -ivh 也可以双击rpm包安装 修改elastaticsearch host配置 修 ...

  4. linux安装locust

    linux安装locust 1. 安装epel扩展源(目的是为了在安装Pip时不出现一堆乱七八糟的错误信息) EPEL(http://fedoraproject.org/wiki/EPEL) 是由 F ...

  5. Java 线程 — ConcurrentLinkedQueue

    ConcurrentLinkedQueue 在考虑并发的时候可以先考虑单线程的情况,然后再将并发的情况考虑进来. 比如ConcurrentLinkedQueue: 先考虑单线的offer 再考虑多线程 ...

  6. 初次使用IDEA的相关技巧

    前言:由于初次使用IDEA,所以很多配置都不是非常熟悉,经过一下午慢慢熟悉和同事的帮助,终于有所斩获,现在我把这个总结写出来,希望能够帮助初次使用的java工程师. 1:下载和安装 下载地址:http ...

  7. 查看 table,view,sp的定义

    1, 查看用户创建的Proc,View, UDF,trigger 的定义 sys.sql_modules Returns a row for each object that is an SQL la ...

  8. fabric upgrade from old crashlystic stuck in build

    提示build,一直没有反应. 问题:工程中原有的shell命令屏蔽掉了

  9. shell脚本学习心得

    近来主要捣鼓ubuntu,大多数项目中都用到了sh脚本作为启动脚本等,以前只是大概明白如何使用,今天需要自己修改并运行脚本就碰到了很多问题,所以决定静下心来学习一下shell脚本,学习了几个小时,现将 ...

  10. [c++] Associative Containers

    关联容器 和 顺序容器 的本质差别在于: 关联容器通过键(key)存储和读取元素,而顺序容器则通过元素在容器中的位置顺序存储和访问元素. Reference: http://www.cnblogs.c ...