標籤:for 3.1 pat deb 服務端 list ora dem lib
上回書講到《Oracle 10g在Solaris 10中安裝詳解》,現在開始用Qt來編譯下Oracle 10g驅動吧!這樣就可以通過Qt程式聯入Oracle資料庫了!
Oracle的環境變數:
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.0.2
Qt的編譯檔案在Solaris 10下的路徑:
/export/home/qt-4.3.1/qt-X11-commercial-src-4.3.1
Qt的環境變數:
QTDIR=/usr/local/Trolltech/Qt-4.3.1
Show下環境變數:
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.0.2
export ORALCE_BASE ORACLE_HOME
QTDIR=/usr/local/Trolltech/Qt-4.3.1
PATH=$QTDIR/bin:$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$QTDIR/lib:/usr/openwin/sfw/lib:$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export QTDIR PATH LD_LIBRARY_PATH
OK!開始在Solaris 10下Qt編譯Oracle 10g驅動,Oracle 10g是服務端!
cd /export/home/qt-4.3.1/qt-X11-commercial-src-4.3.1/src/plugins/sqldrivers/oci
qmake -o Makefile "INCLUDEPATH+=$ORACLE_HOME/rdbms/public $ORACLE_HOME/rdbms/demo" "LIBS+=-L$ORACLE_HOME/lib -lclntsh" oci.pro
gmake
gmake install
這樣你就能在 $QTDIR/plugins/sqldrivers 中找到 libqsqloci.so 資料庫的驅動了~~
在用的程式中的pro檔案中需要如下設定:
QT += sql
測試一下吧~
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() << "\t" << driver;
你會驚喜的發現,QOCI8和QOCI的出現!
最後墨跡一句,在configure的時候編譯如下:
configure -plugin-sql-oic -I/$ORACLE_HOME/rdbms/public -I/$ORACLE_HOME/rdbms/demo -L$ORACLE_HOME/lib
http://cool.worm.blog.163.com/blog/static/6433900620098711338225/
Solaris 10下Qt編譯Oracle 10g驅動