29 Aug 2005 04:13
Re: uffi and clsql-mysql and AMD_64
Carlos Konstanski wrote: > Here's the end of compilation and the error dump: Looks like your shared library wasn't built. Or it is was, CLSQL is not finding it. It looks like your using common-lisp-controller. Is this on Debian? Because the Debian CLSQL package automatically installs the shared libraries and adds /etc/clsql-init.lisp file with the following: (clsql:push-library-path #p"/usr/lib/") (clsql:push-library-path #p"/usr/lib/clsql/") > root <at> sphinktoo:/# ls -l /usr/lib/clsql/clsql_uffi.so > -rwxr-xr-x 1 root root 2528 Aug 28 18:19 /usr/lib/clsql/clsql_uffi.so > > Now we know that at least the one .so file is there. Yep, you can use an /etc/clsql-init.lisp file to add that path like the above. > /usr/share/common/lisp/source/clsql-uffi/uffi/. Maybe I am once That's from the common lisp controller. Is this a gentoo package your trying to build. If so, it's not correctly made. > misinterpreting things, but it seems to be saying it wants to find the > .so files there. You are correct. > * clsql-uffi-system::*library-file-dir* > (:ABSOLUTE "usr" "share" "common-lisp" "source" "clsql-uffi" "uffi") > which is the path to the asdf packages, not the .so files. So this path > is probably not the issue, and it's not supposed to be the path to the > .so files. Dead end. That's the path to the CLSQL source. > I did attempt to cripple the 64 bit part, with the result that I got a > nearly identical backtrace to the one shown above, but it only > complained about clsql_uffi rather than both libraries. Which brings up > a point - this debug trace is complaining about both libraries, though > one of them is present on the filesystem. But not found in a standard place. You need the clsql-init.lisp file to tell CLSQL where the shared library is. > Also, creating the symlink clsql_uffi64.so -> clsql_uffi.so has no effect. That's right. clsql_uffi.so is all you need. Don't worry about the *64.so file. > Is there a path somewhere that points to the .so files that I can check? > Maybe we're looking in the wrong place entirely for the libraries, using > a path that isn't reported in the debug trace. No, that was ripped out in the recent reworking of library file searchs. Now, the correct way is to place the library file in a system location (like /usr/lib), so push a path for CLSQL to search in the /etc/clsql-init.lisp file. Kevin
RSS Feed