[elephant-devel] BDB problems and a proper FAQ
Ian Eslick
eslick at media.mit.edu
Fri Nov 13 18:19:54 UTC 2009
Hi All,
To address recent discussions.
I'm ostensibly the primary developer on Elephant; the three prior
primary developers have been inactive for years now. Leslie has
recently been kind enough to step up and help with user support and
bug fixes and will certainly be recognized in the 1.0 manual when
we're ready for a final release (updating the manual has been one of
the gating tasks). We all do our best to help and want Elephant to be
as robust as possible. I in particular have been lousy at responding
recently, but there are of course good reasons for that.
Anyway, I'm sorry to hear that your experience has been so
frustrating. Unfortunately, the 64-bit lisp + OS + BDB combinations
have made things much more difficult than they once were. As an
aside, Franz AllegroCache has most of the features of Elephant and has
a great and responsive support staff. If you are frustrated with the
state of free, volunteer-developed lisp libraries it is possible to
pay to get more reliability and better support!
There are dozens of users of Elephant, some casual and some serious.
Some are working on older versions of the library as their deployed
systems are stable and not actively developed so not everyone is
subject to problems with the current release. Leslie and I are just
the most vocal on this list. I'm running Elephant under ClozureCL
these days and it works fine under Snow Leopard as well as Debian.
What's your current status, are you still stuck with the 'invalid
argument' problems?
I think that a FAQ on the home page would be a great way to keep track
of the kind of issues that you have experienced. Here is a first
crack at it; please add your own experiences/observations and I'll
post it on the home page.
1) Documentation for 1.0 release
The documentation on the website is from the 0.9.1 release and may be
incorrect in some details. The mailing list since 2008 and this FAQ
should supersede anything in the documentation.
2) CLBUILD Compatability
Elephant does not work properly under the default cl-build
configuration due to it's UFFI dependency. We have made attempts to
port BDB to CFFI without success; there are subtle issues that lead
to obscure bugs and the original FFI developer who wrote that code
left the project in 2003 or 2004 and no one else has yet had the time
and expertise to resolve them. The workaround, thanks to Sebastian
Tennant, is:
a) Edit wnpp-projects so that elephant-1.0 is pulled from darcs.
b) Install UFFI (available from URL) and ensure that the 'real'
uffi.asd is found by ASDF first.
3) Library and Lisp Dependencies
The most common active configurations of the 1.0 release branch is on
SBCL/Linux/Postmodern+BDB and ClozureCL/MacOS/BDB. Elephant is known
to work on those platforms when properly configured.
We track the latest version of BDB. The current 1.0 pre-release
depends on BDB 4.7.
4) 64-bit Lisp and BDB
If you are running a 32-bit or 64-bit lisp, BDB will need to be built
for the appropriate architecture. Due to this the default MacPorts,
Debian packages or other pre-packaged distributions of BDB may fail
for you. Building from source is the appropriate solution (thanks to
Matthew Emerson for the script). Don't forget to update my-
config.sexp to use "4.7" and point to the appropriate paths.
a. get bdb 4.7
Direct link; if it doesn't work use the index page:
http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz
Index page:
http://www.oracle.com/technology/software/products/berkeley-db/db/index.html
b. unpack into /usr/local/src (or wherever)
Build docs are at
file:///usr/local/src/db-4.7.25/docs/ref/build_unix/intro.html
(or wherever you put it)
c. cd to db-4.7.25/build_unix
d. use the following command line to configure, where $ is the shell
prompt
$ CFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ../dist/configure
e. sudo make install
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/elephant-devel/attachments/20091113/a2b42f22/attachment.html>
More information about the elephant-devel
mailing list