Bevis King wrote:

> OK, some more info.  Thanks to Jan for the suggestion of using -8 -
> I'd already tried that and it didn't work.  However I did try
> building a much older version DBD::Oracle 1.02 and that built
> just fine.
>
> It would seem that between DBD::Oracle 1.02 and DBD::Oracle 1.12
> a dependancy has been added for the OCI_HTYPE_SUBSCRIPTION constant
> which is present in the 8.1.7 oci.h header file but was not present
> in the 8.0.5 oci.h file.  The 8.0.5 oci.h file defines only 12
> handle types, while 8.1.7 defines 17.  This one is number 13 -
> unlucky for some (including me!).
>
> Similarly OCI_DTYPE_LOCATOR is descriptor number 61 in the 8.1.7
> oci.h file; in the 8.0.5 oci.h file the highest number is no 60.
>
> So... what to do now?  For now I'm up and running with 1.02 so the
> immediate problem is averted; is this kind of version compatibility
> usually allowed for in the DBD drivers?   Would it help if I were
> to try and come up with a patch that looses references to these two
> options and any functionality they provide when it's compiled on
> 8.0.5 or does nobody really care about that old a release any more?
>
> Regards, Bevis.

            DBI
-------------------- (just like UNIX's VFS)
            DBD
--------------------
      Client Libraries (connecting to database engine)

DBD is a set of glue codes used to bind perl and client libraries.
So you have to read DBD's version compatibility carefully.
Because nobody can promise client libraries and its header files are
compatible.
And sometimes those companies will make a little difference to promote
version upgrading.



Reply via email to