[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#4735) configure choice of ODBC



rk@owen.sj.ca.us wrote:
> Full_Name: R.K. Owen
> Version: HEAD
> OS: linux
> URL: ftp://ftp.openldap.org/incoming/rkowen-061106.patch
> Submission from: (NULL) (66.87.79.68)
>
>
> When using the back-sql with the Oracle XE DB, the Oracle ODBC library
> libsqora.so.10.1 was designed to be linked against the unixODBC interface
> library instead of the iODBC interface library.  This can be demonstrated by
> using the unixODBC isql tool which will  allow successful interactive querying
> of the Oracle DB.  However, when trying to start up the slapd daemon with 'slapd
> -d 1' the daemon will quit with an error claiming:
>    Message:           [iODBC][Driver Manager]
> /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libsqora.so.10.1:
> undefined symbol: bcuMsgBoxError
>
> The cause for this is that the configure script will first search for iodbc,
> then odbc, and thus cause slapd to be built against the iodbc library.
> By adding the -with-odbc option the configure script will allow the
> administrator to choose which library to use in a flexible way:
>
>   --with-odbc=iodbc                 # current default (-liodbc)
>   --with-odbc=odbc                  # try -lodbc
>   --with-odbc=/usr/lib/libodbc.so.1 # link against the shared object library
>
> The changes have been made to the source configure.in file and uploaded as a
> patch.
>
>   
The patch is not acceptable, since it requires to specify the desired 
OBDC support, which is counter-intuitive, as most of the RDBMS have 
drivers or allow to use drivers for both implementations of ODBC.  
However, your need is clear.  I've designed a different fix, which 
requires to set --with-odbc to the preferred sequence of ODBCs to try 
(iodbc | unixodbc), while the default (auto) tries the original 
sequence.  It is now committed to HEAD; please test.

p.



Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office:   +39.02.23998309
Mobile:   +39.333.4963172
Email:    pierangelo.masarati@sys-net.it
------------------------------------------