小编STL*_*STL的帖子

编译静态时如何摆脱OCI.dll依赖

我的应用程序通过 Qt 的 QSqlDatabase 类访问 Oracle 数据库。

我正在将 Qt 编译为发布版本的静态版本,但我似乎无法摆脱 OCI.dll 依赖项。我正在尝试链接 oci.lib(在 Oracle 的 Instant Client with SDK 中可用)。

这是我的配置行:

configure -qt-libjpeg -qt-zlib -qt-libpng -nomake examples -nomake demos -no-exceptions -no-stl -no-rtti -no-qt3support -no-scripttools -no-openssl -no-opengl -no-phonon -no-style-motif -no-style-cde -no-style-cleanlooks -no-style-plastique -static -release -opensource -plugin-sql-oci -plugin-sql-sqlite -platform win32-msvc2005
Run Code Online (Sandbox Code Playgroud)

我使用以下命令链接 SDK 文件夹中的 oci.h 和 oci.lib:

set INCLUDE=C:\oracle\instantclient\sdk\include;%INCLUDE%
set LIB=C:\oracle\instantclient\sdk\lib\msvc;%LIB%
Run Code Online (Sandbox Code Playgroud)

然后,一旦 Qt 被编译,我在 *.pro 文件中使用以下几行:

QT += sql
CONFIG += static
LIBS += C:\oracle\instantclient\sdk\lib\msvc\oci.lib
QTPLUGIN += qsqloci
Run Code Online (Sandbox Code Playgroud)

然后,在我的main.cpp 中 …

c++ database oracle qt static-linking

2
推荐指数
1
解决办法
2454
查看次数

标签 统计

c++ ×1

database ×1

oracle ×1

qt ×1

static-linking ×1