Bug 143559
Summary: | There is no MyODBC.i386 package for connecting to openoffice to mysql sever | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Keith Sornen <sornen> |
Component: | openoffice.org | Assignee: | Bill Nottingham <notting> |
Status: | CLOSED RAWHIDE | QA Contact: | Bill Nottingham <notting> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | caolanm, dcbw, rvokal, tgl |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2006-05-15 15:08:02 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Keith Sornen
2004-12-22 11:11:10 UTC
Looks like it's there to me: $ rpm -qlp MyODBC-2.50.39-19.1.x86_64.rpm /usr/lib64/libmyodbc-2.50.39.so /usr/lib64/libmyodbc.so /usr/share/doc/MyODBC-2.50.39 /usr/share/doc/MyODBC-2.50.39/ChangeLog /usr/share/doc/MyODBC-2.50.39/INSTALL /usr/share/doc/MyODBC-2.50.39/odbc.ini What do you get from "ldd /usr/lib64/libmyodbc.so" ? What versions of MyODBC and mysql do you have installed? The x86_64 version of MyOCBD is installed on my machine, but openoffice is an i386 package. I think the problem is openoffice a 32 bit package calling a 64 bit library. $ ls /usr/lib64/libmy* /usr/lib64/libmyodbc-2.50.39.so /usr/lib64/libmyodbc.so The error message is: Can't open lib '/usr/lib64/libmyodbc.so' : /usr/lib64/libmyodbc.so: cannot open shared object file: No such file or directory. If I am right this could be fixed by making openoffice an x86_64 package or supplying MyODBC as an additional i386 package. I have tried rebuilding the src rpm of MyODBC with --target=i386 without success. I have MyODBC-2.50.39-19.1, mysql-3.23.58-13
> ldd /usr/lib64/libmyodbc.so
libmysqlclient.so.10 => /usr/lib64/mysql/libmysqlclient.so.10
(0x0000002a9568f000)
libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a957cd000)
libodbcinst.so.1 => /usr/lib64/libodbcinst.so.1
(0x0000002a958e0000)
libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a959ee000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x0000002a95c1f000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x0000002a95d53000)
libm.so.6 => /lib64/tls/libm.so.6 (0x0000002a95e6b000)
libltdl.so.3 => /usr/lib64/libltdl.so.3 (0x0000002a95ff1000)
libpthread.so.0 => /lib64/tls/libpthread.so.0 (0x0000002a960f8000)
/lib64/ld-linux-x86-64.so.2 (0x000000552aaaa000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000002a9620e000)
The thing that bothers me is that the error message clearly says "No such file or directory", when the file is there (and so are all the shlibs it depends on, according to ldd). If your theory is correct then I'd have expected some other error, along the lines of "wrong library type". Still, I don't see what else it could be. I'm going to reassign this as a distribution bug. Not shipping the 32-bit library on 64-bit platforms is their bailiwick not mine ... In my limited experience running an x86_64 distribution (less that one month), this is the error message I have had before when a 32 bit program accesses a 64bit library. openoffice.org doesn't appear to have requires on odbc libraries. Does it have a fixed list of files it tries to dlopen? The odbc libraries are required for database connectivity to a mysql server (see the menu Tools/Data Sources). So it probably only tries a dlopen of the odbc libraries when you try to connect. open office tried to open /usr/lib/libodbc.so (may libodbc.so.1) the issue with this is a 32-bit MyODBC package needs to be included so that openoffice can connect to MySQL servers via the 32-bit unixODBC interface. OR an alternative is to rebuild openoffice as a 64bit application (probably not an easy feat) FWIW: x86_64 OOo porting looks like it'll be in good shape soon, possibly for fc6 with x86_64 OOo as in rawhide the x86_64 odbc should now be used in this scenario |