FS#23772 - [unixodbc][myodbc] Driver Manager can't open lib
Attached to Project:
Community Packages
Opened by Marc Rechté (mrechte) - Friday, 15 April 2011, 06:50 GMT
Last edited by Sergej Pupykin (sergej) - Tuesday, 12 July 2011, 14:23 GMT
Opened by Marc Rechté (mrechte) - Friday, 15 April 2011, 06:50 GMT
Last edited by Sergej Pupykin (sergej) - Tuesday, 12 July 2011, 14:23 GMT
|
Details
Description:
Trying to connect produces the following error: [mrechte@linux2 ~]$ isql geslogweb -v [01000][unixODBC][Driver Manager]Can't open lib '/usr/lib/libmyodbc5-5.1.8.so' : file not found [ISQL]ERROR: Could not SQLConnect Additional info: * package version(s) [mrechte@linux2 ~]$ pacman -Q unixodbc myodbc unixodbc 2.3.0-1 myodbc 5.1.8-1 * config and/or log files etc. [mrechte@linux2 ~]$ ldd /usr/lib/libmyodbc5-5.1.8.so linux-gate.so.1 => (0xb76e7000) libltdl.so.7 => /usr/lib/libltdl.so.7 (0xb6d6a000) libmysqlclient.so.18 => /usr/lib/libmysqlclient.so.18 (0xb6ab8000) libpthread.so.0 => /lib/libpthread.so.0 (0xb6a9f000) libm.so.6 => /lib/libm.so.6 (0xb6a79000) librt.so.1 => /lib/librt.so.1 (0xb6a6f000) libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0xb6a1e000) libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0xb68a4000) libdl.so.2 => /lib/libdl.so.2 (0xb68a0000) libz.so.1 => /usr/lib/libz.so.1 (0xb688b000) libodbcinst.so.1 => /usr/lib/libodbcinst.so.1 (0xb687d000) libc.so.6 => /lib/libc.so.6 (0xb6730000) libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xb6714000) /lib/ld-linux.so.2 (0xb76e8000) [mrechte@linux2 ~]$ file /usr/lib/libmyodbc5-5.1.8.so /usr/lib/libmyodbc5-5.1.8.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped [mrechte@linux2 ~]$ file /usr/bin/isql /usr/bin/isql: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped [mrechte@linux2 ~]$ dltest /usr/lib/libmyodbc5-5.1.8.so [dltest] ERROR dlopen: file not found [MySQL] Description = ODBC Driver for MySQL Driver = /usr/lib/libmyodbc5-5.1.8.so Setup = /usr/lib/libodbcmyS.so FileUsage = 1 [mrechte@linux2 ~]$ cat /etc/odbc.ini [geslogweb] Description = MySQL geslog Web Driver = MySQL Server = localhost Database = geslogweb Port = 3306 Socket = /tmp/mysql.sock Option = Stmt = Steps to reproduce: |
This task depends upon
I tried the PostgreSQL ODBC driver and dltest worked fine with it, I tried rebuilding the myodbc package and it still had the same issues and I tried changing the paths to the library but it had no effect.
It seems as though the issue might be with unixODBC and MyODBC -- perhaps a compatibility issue?
libtool@gnu.org/msg11839.html"> http://www.mail-archive.com/libtool@gnu.org/msg11839.html, I removed myodbc and downloaded directly from http://dev.mysql.com/downloads/connector/odbc/ which happen to have libtool library files *.la
Using unixodbx's dltest results in successul loading.
I did not uninstall myodbc (just to keep a track), and overwrote with the downloaded files (check pacman -Ql myodbc).
THANKS
* The following ./configure switches are no longer valid: --disable-qt, --without-samples and --enable-thread-safe
* The CFLAGS and LDFLAGS are being reset, this is the reason why the build is not working with dltest
* The '-lmysqld' flag in LDFLAGS does absolutely nothing. There is no such .so anywhere (though there is a .la)
Overall this PKGBUILD looks like its just being 'kept up to date' but the format doesn't look like any other PKGBUILDs I've seen in the repos. I propose the attached patch to PKGBUILD that compiles a MySQL ODBC connector that loads properly with dltest.