QT5.9 编译 OCI (安装的时候没有选择sources)

     由于前几天为了安装Qt快一点,没有选择sources ,所以导致了要连接oracle 没有驱动,该这么办呢。

1、http://download.qt.io/archive/qt/5.9/5.9.1/single/  下载  qt-everywhere-opensource-src-5.9.1.zip , 跟我一样没有选择sources的人可以从Qt的官网下载源文件,解压并拷贝到D:\Qt\Qt5.9.1\5.9.1,为了和安装的一样,更名为Src文件夹。

2、打开Qt5.9.1  for desktop (mingw 5.3.0 32 bit) 直接到D:\Qt\Qt5.9.1\5.9.1\Src\qtbase\src\plugins\sqldrivers\oci 路径下,这个时候如果和前面的一样直接qmake,会报错,找不到 qsqldriverbase.pri ,这个时候你需要cd..,返回到上级,qmake一下,这样就可以了。

3、回来qmake还是不行,会报错 “Library 'oci' is not defined” 还会报 “qsql_oci.cpp:65:17: fatal error: oci.h: No such file or directory” 这个时候就是pro文件的问题了,咱们用的是mingw的版本,所以解决办法是 原来默认的pro代码是

TARGET = qsqloci

HEADERS += $$PWD/qsql_oci_p.h
SOURCES += $$PWD/qsql_oci.cpp $$PWD/main.cpp

QMAKE_USE += oci

darwin:QMAKE_LFLAGS += -Wl,-flat_namespace,-U,_environ

OTHER_FILES += oci.json

PLUGIN_CLASS_NAME = QOCIDriverPlugin
include(../qsqldriverbase.pri)
改成
TARGET = qsqloci

HEADERS += $$PWD/qsql_oci_p.h
SOURCES += $$PWD/qsql_oci.cpp $$PWD/main.cpp

#QMAKE_USE += oci
QMAKE_LFLAGS +=D:\oracle\product\10.2.0\db_1\BIN\oci.dll

darwin:QMAKE_LFLAGS += -Wl,-flat_namespace,-U,_environ

OTHER_FILES += oci.json

INCLUDEPATH += D:\oracle\product\10.2.0\db_1\OCI\include
LIBPATH += D:\oracle\product\10.2.0\db_1\OCI\lib\MSVC

PLUGIN_CLASS_NAME = QOCIDriverPlugin

include(../qsqldriverbase.pri)

改变qmake的dll路径,和添加oracle里面的编译需要文件夹,这个时候在qmake  , mingw32-make ,叮叮叮,成功编译。

4、拷贝:将:D:\Qt\Qt5.9.1\5.9.1\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers文件夹里面生成的qsqloci.dll,qsqlocid.dll 复制到D:\Qt\Qt5.9.1\5.9.1\mingw53_32\plugins\sqldrivers下面即可。具体测试代码,看我前面的博客。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波塞冬~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值