- 安装好Qt之后,配置好环境变量,尤其是qmake
vi /etc/profile
export PATH="/opt/Qt5.7.1/5.7/gcc_64/bin:$PATH"
export PATH="/opt/Qt5.7.1/Tools/QtCreator/bin:$PATH"
- 安装Oracle客户端
- 进入oci.pro 目录,以下操作在此目录下操作
cd /opt/Qt5.7.1/5.7/Src/qtbase/src/plugins/sqldrivers/oci
- 修改 oci.pro,主要是添加上Oracle的库(根据自己实际路径,这里的LIBS应该可以不用添加,再下一步加)
TARGET = qsqloci
SOURCES = main.cpp
OTHER_FILES += oci.json
include(../../../sql/drivers/oci/qsql_oci.pri)
PLUGIN_CLASS_NAME = QOCIDriverPlugin
include(../qsqldriverbase.pri)
INCLUDEPATH += /usr/include/oracle/11.2/client64
LIBS += /usr/lib/oracle/11.2/client64/lib/libclntsh.so
LIBS += /usr/lib/oracle/11.2/client64/lib/libocci.so
LIBS += /usr/lib/oracle/11.2/client64/lib/libociei.so
LIBS += /usr/lib/oracle/11.2/client64/lib/libocijdbc11.so
- 修改 qsql_oci.pri,修改 LIBS
HEADERS += $$PWD/qsql_oci_p.h
SOURCES += $$PWD/qsql_oci.cpp
unix {
!contains(LIBS, .*clnts.*):LIBS += /usr/lib/oracle/11.2/client64/lib/libclntsh.so
} else {
LIBS *= -loci
}
mac:QMAKE_LFLAGS += -Wl,-flat_namespace,-U,_environ
- qmake 编译
qmake -makefile OCI_INCDIR=/usr/include/oracle/11.2/client64 OCI_LIBDIR=/usr/lib/oracle/11.2/client64/lib
- make
- 可看到驱动文件已编译,此目录下
/opt/Qt5.7.1/5.7/Src/qtbase/plugins/sqldrivers/libqsqloci.so
官网文档:
qt_sql_driver