newLISP, mysql and Fedora(and likely RedHat, etc.)

Started by ehrichweiss, November 18, 2010, 05:07:43 PM

Previous topic - Next topic

ehrichweiss

One of my first times playing with newLISP I discovered that there is a bit of a "bug" when using mysql. It would always return an error code telling me it couldn't find libmysqlclient.so despite the fact that I have it installed. I had looked at the paths in mysql.lsp several times before I discovered the problem: Fedora has it at /usr/lib/mysql/libmysqlclient.so which looks an awful lot like the /usr/mysql/lib/libmysqlclient.so listed.



Any chance someone wants to add that to the path list and commit it? I imagine it will cause a few of us some problems.

Lutz

#1
Thanks, the path will be added / corrected.

Ishpeck

#2
Noticed a similar problem on my OpenBSD 4.9 system.  



/usr/local/share/newlisp-10.2.16/modules/mysql.lsp had a line like...


"/usr/local/lib/libmysqlclient.so.19.0" ; OpenBSD 4.6

I changed it like so:


"/usr/local/lib/libmysqlclient.so.20.0" ; OpenBSD 4.9

And now it works.   You'd think the package maintainers would'a caught that.  :P

TedWalther

#3
The version numbers keep changing.  I've been thinking of going through all the modules, and have a library versioning in the init.lsp file.  Be nice to update library versions in one file, then all modules could reference it.
Cavemen in bearskins invaded the ivory towers of Artificial Intelligence.  Nine months later, they left with a baby named newLISP.  The women of the ivory towers wept and wailed.  \"Abomination!\" they cried.

Lutz

#4
The problem should be solved by the MySQL installation with a link:



libmysqlclient.so -> libmysqlclient.so.xx.0  (where  xx is the version number)



then the mysql.lsp module could refer to just libmysqlclient.so, which is always linked to the latest on that platform. This is how it works for UBUNTU Linux and OS X and generally for libraries in /usr/lib including on OpenBSD. Perhaps somebody can find out what the standard path prefix is for MySQL on OpenBSD (and also Fedora). Then that can be added to the module together with the generic libmysqlclient.so name.