Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Making an OCI (Oracle call interface) driver
Forum Updated to NodeBB v4.3 + New Features

Making an OCI (Oracle call interface) driver

Scheduled Pinned Locked Moved Installation and Deployment
5 Posts 2 Posters 2.9k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    slesher
    wrote on last edited by
    #1

    Hello!

    Qt 5.4
    mingw491_32
    (tried also on the Qt 5.3)
    OS Windows 8.1

    I've got some trouble with compiling an OCI driver.
    As it was told by instructions:

    @ set INCLUDE=%INCLUDE%;c:\oracle\oci\include
    set LIB=%LIB%;c:\oracle\oci\lib\msvc
    cd %QTDIR%\src\plugins\sqldrivers\oci
    qmake oci.pro
    nmake@

    Firstly, i don.t have path exactly like \src\plugins\sqldrivers\oci
    instead, i have these ones:
    D:\apps\qtthenew\5.4\Src
    D:\apps\qtthenew\5.4\mingw491_32\plugins\sqldrivers

    However, i don't seem to have either oci folder or oci.pro file.
    i tried just to create a folder, move there and then run qmake oci.pro, but i am told that it can't find a file oci.pro
    Gererally, my folder \sqldrivers has only some drivers and no filders.

    By the way, should i set in include and lib links to oracle server libs or oracle client? A have the same folders in both ones.

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      You need to first retrieve the Qt sources, then you'll be able to go further

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • S Offline
        S Offline
        slesher
        wrote on last edited by
        #3

        [quote author="SGaist" date="1423570632"]Hi and welcome to devnet,

        You need to first retrieve the Qt sources, then you'll be able to go further[/quote]

        Thanks a lot
        I'm now downloading from https://qt.gitorious.org/qt, qt/digia-qt repository
        am i right?

        So should i then use copy the required files to my Qt installed folder, to the path %QTDIR%src\plugins\sqldrivers\oci ?

        1 Reply Last reply
        0
        • S Offline
          S Offline
          slesher
          wrote on last edited by
          #4

          a new problem

          it was OK until i ran mingw32-make
          i tried to find the files it can't do but i failed

          @D:\apps\qtthenew\5.4\Src\plugins\sqldrivers\oci>mingw32-make
          mingw32-make -f Makefile.Release
          mingw32-make[1]: Entering directory 'D:/apps/qtthenew/5.4/Src/plugins/sqldrivers
          /oci'
          g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -m
          threads -DUNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_DEBUG -D
          QT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -I"........\mingw491_32\include" -I"
          ........\mingw491_32\include\QtSql" -I"........\mingw491_32\include\QtCore
          " -I"release" -I"........\mingw491_32\mkspecs\win32-g++" -o release\main.o ma
          in.cpp
          In file included from main.cpp:44:0:
          ../../../sql/drivers/oci/qsql_oci.h:47:46: fatal error: QtSql/private/qsqlcached
          result_p.h: No such file or directory
          #include <QtSql/private/qsqlcachedresult_p.h>
          ^
          compilation terminated.
          Makefile.Release:280: recipe for target 'release/main.o' failed
          mingw32-make[1]: *** [release/main.o] Error 1
          mingw32-make[1]: Leaving directory 'D:/apps/qtthenew/5.4/Src/plugins/sqldrivers/
          oci'
          makefile:34: recipe for target 'release' failed
          mingw32-make: *** [release] Error 2@

          1 Reply Last reply
          0
          • S Offline
            S Offline
            slesher
            wrote on last edited by
            #5

            i solved this as mentioned in "http://stackoverflow.com/questions/17601662/how-to-build-qt-qoci-oracle-database-driver-on-windows-with-mingw"

            now i received the next message:
            @
            D:\apps\qtthenew\5.4\Src\plugins\sqldrivers\oci>mingw32-make
            mingw32-make -f Makefile.Release
            mingw32-make[1]: Entering directory 'D:/apps/qtthenew/5.4/Src/plugins/sqldrivers
            /oci'
            g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -m
            threads -DUNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_DEBUG -D
            QT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -I"........\mingw491_32\include" -I"
            ........\mingw491_32\include\QtSql" -I"........\mingw491_32\include\QtCore
            " -I"release" -I"........\mingw491_32\mkspecs\win32-g++" -I"D:\OClient\produc
            t\11.2.0\client_1\oci\include" -I"D:\OClient\product\11.2.0\client_1\oci\lib\msv
            c" -o release\main.o main.cpp
            In file included from ........\mingw491_32\include/QtCore/qnamespace.h:37:0,
            from ........\mingw491_32\include/QtCore/qobjectdefs.h:41,
            from ........\mingw491_32\include/QtCore/qobject.h:40,
            from ........\mingw491_32\include/QtCore/qplugin.h:37,
            from ........\mingw491_32\include\QtSql/qsqldriverplugin.h:3
            7,
            from main.cpp:42:
            ........\mingw491_32\include/QtCore/qglobal.h:694:5: error: expected construc
            tor, destructor, or type conversion before 'enum'
            enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, COUNTER) = s
            izeof(QStaticAssertFailure<!!(Condition)>)}
            ^
            ........\mingw491_32\include/QtCore/qglobal.h:699:47: note: in expansion of m
            acro 'Q_STATIC_ASSERT'
            #define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition)
            ^
            ........\mingw491_32\include/QtCore/qplugin.h:136:5: note: in expansion of ma
            cro 'Q_STATIC_ASSERT_X'
            Q_STATIC_ASSERT_X(false, "Old plugin system used")
            ^
            main.cpp:80:1: note: in expansion of macro 'Q_EXPORT_PLUGIN2'
            Q_EXPORT_PLUGIN2(qsqloci, QOCIDriverPlugin)
            ^
            Makefile.Release:282: recipe for target 'release/main.o' failed
            mingw32-make[1]: *** [release/main.o] Error 1
            mingw32-make[1]: Leaving directory 'D:/apps/qtthenew/5.4/Src/plugins/sqldrivers/
            oci'
            makefile:34: recipe for target 'release' failed
            mingw32-make: *** [release] Error 2@

            1 Reply Last reply
            0

            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups
            • Search
            • Get Qt Extensions
            • Unsolved