Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Making an OCI (Oracle call interface) driver

    Installation and Deployment
    2
    5
    2405
    Loading More Posts
    • 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
      slesher last edited by

      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 Reply Quote 0
      • SGaist
        SGaist Lifetime Qt Champion last edited by

        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 Reply Quote 0
        • S
          slesher last edited by

          [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 Reply Quote 0
          • S
            slesher last edited by

            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 Reply Quote 0
            • S
              slesher last edited by

              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 Reply Quote 0
              • First post
                Last post