Re: edbi on 64 bit machines?
- Posted by jimcbrown (admin) Apr 25, 2012
- 4649 views
(it still exists in /usr/share/euphora/edbi/drivers/mysql/)
This most likely is the case, but ...
Is this a typo for /usr/share/euphoria/edbi/drivers/mysql/ ?
That is, euphoria with an i ?
If not, then that might be part of the problem.
I then made a copy edbi_mysql.so to /usr/share/lib
This most likely is the case, but ...
Are you sure /usr/share/lib is in the library path? That is, is it in /etc/ld.so.conf ?
Also, are you sure this is in the right lib directory? That is, the library is visible in /usr/share/lib64 ?
Upon running my program I get:
tm22:/srv/www/htdocs/cgi # eui svgmap_test.ex /usr/share/euphoria/include/std/error.e:50 in procedure crash() Could not open driver as: /usr/share/euphoria/edbi/drivers/mysql/edbi_mysql.so /usr/share/euphoria/edbi/drivers/edbi_mysql.so edbi_mysql.so ... called from /usr/share/euphoria/include/std/../../edbi/edbi/edbi.e:334 in function open() ... called from /srv/www/htdocs/cgi/./db.e:7 in function open_db() ... called from /srv/www/htdocs/cgi/./svg.e:29 --> See ex.err
The permissions on edbi_mysql.so are open. I know the program works on 32 bit.
Any clues?
Thanks for all of your help!
So you built the driver twice? Once for 32bit and once for 64bit?
Are you sure that the 64bit library is really 64bit?
You can confirm by using the command-line utility file:
$ file /usr/lib32/libxml.so.1.8.17 /usr/lib32/libxml.so.1.8.17: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped $ file /usr/lib64/libaaa.so.1.0.4 /usr/lib64/libaa.so.1.0.4: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), stripped $
If it's really 64bit, then it should be identified as an "ELF 64-bit" but if it says that it is an "ELF 32-bit" then it is a 32bit library that can't be loaded by a 64bit euphoria.
If the library really is 64bit and it really is in the right place, then try running ldd on it. That might list some missing dependencies that need to be fixed before you can load the driver.

