Package: libdbi-drivers
Version: 0.7.1-2

The drivers generated by this source package have a severe issue related
to dynamic linking in them.

They expect to be able to find symbols in the libdbi.so library
implicitly when they are dlopen()ed.

Unfortunately if libdbi.so is linked to by another .so which is
dlopen()ed into the app at runtime, with the RTLD_LOCAL flag set, then
libdbi.so will also be loaded with its symbols "LOCAL" and as such any
attempt to dlopen() a libdbd-foo driver will fail with a missing symbol.

The way to fix this is for the libdbd-foo drivers to be linked against
libdbi also. This means that the dynamic linker will find the symbols at
runtime despite the presence of the RTLD_LOCAL flag and all will be
well.

Please consider simply adding "-ldbi" to all the LDFLAGS lines in the
drivers.

Regards,

Daniel

-- 
Daniel Silverstone                               http://www.digital-scurf.org/
Hostmaster, Webmaster, and Chief Code Wibbler          Digital-Scurf Unlimited
GPG Public key available from keyring.debian.org               KeyId: 20687895


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to