[elephant-cvs] CVS update: elephant/INSTALL

blee at common-lisp.net blee at common-lisp.net
Sun Aug 29 20:31:27 UTC 2004


Update of /project/elephant/cvsroot/elephant
In directory common-lisp.net:/tmp/cvs-serv7408

Modified Files:
	INSTALL 
Log Message:
updates

Date: Sun Aug 29 22:31:27 2004
Author: blee

Index: elephant/INSTALL
diff -u elephant/INSTALL:1.3 elephant/INSTALL:1.4
--- elephant/INSTALL:1.3	Sun Aug 29 09:52:34 2004
+++ elephant/INSTALL	Sun Aug 29 22:31:26 2004
@@ -3,9 +3,9 @@
 Requirements
 ------------
 
-CMUCL 19a, Allegro CL 6.2 or OpenMCL 0.14.2.  Recent
-versions of SBCL and Lispworks should be supported / easy to
-make work.
+CMUCL 19a, SBCL 0.8.13, or Allegro CL 6.2.  I've tested
+under FreeBSD and Linux.  OpenMCL and Lispworks versions
+will come soon.
 
 ASDF - http://www.cliki.net/asdf
 
@@ -14,7 +14,7 @@
 I've patched src/functions.lisp to support some kinds of
 :out arguments.  it is backwards-compatible so shouldn't
 interfere with your existing work.  I've contacted Kevin
-Rosenberg about this.
+Rosenberg about this, it will appear in a future release.
 
 Sleepycat Berkeley DB 4.2 - http://www.sleepycat.com
 
@@ -25,7 +25,13 @@
 Instructions
 ------------
 
-1) Install your lisp, asdf, and UFFI.  Replace
+I assume you have a supported lisp with asdf.
+
+0) Unpack Elephant.  I put mine in the directory
+
+/usr/local/share/common-lisp/elephant/
+
+1) Install UFFI 1.4.24.  Replace
 
 path-to-uffi/src/functions.lisp
 
@@ -34,25 +40,25 @@
 2) Install Berkeley DB 4.2.  FreeBSD has a port for this, as
 I'm sure other BSDs (including Darwin.)  Take note of where
 libdb.so and db.h are installed (usually
+/usr/local/BerekleyDB.4.2/lib/libdb.so and
+/usr/local/BerekleyDB.4.2/include/db.h, or
 /usr/local/lib/db42/libdb.so and
 /usr/local/include/db42/db.h.)
 
-3) Compile src/libsleepycat.c.  I'm no gcc master but under 
-FreeBSD this worked for me:
+3) Edit Makefile and run (using GNU make, gmake on BSD)
 
-gcc -L/usr/local/lib/db42 -I/usr/local/include/db42 -fPIC -shared -O3 -o libsleepycat.so src/libsleepycat.c -ldb
+make install
 
-you may or may not need a trailing -ldb at the end.  Put
-libsleepycat.so somewhere you can get at it, like in your
-common-lisp elephant system dir
+This compiles src/libsleepycat.c and installs it into
 
 /usr/local/share/common-lisp/elephant/
 
-4) Compile and load Elephant.  
+or where you specified.
 
-First, edit src/sleepycat.lisp so that +path-to-sleepycat+
-and +path-to-libsleepycat+ are correct.  (If I were better
-at ASDF there'd be a better way of doing this....)
+4) Compile and load Elephant:  
+
+First, edit src/sleepycat.lisp so that it points to the
+correct libraries.
 
 Symlink elephant.asd to your asdf systems directory (mine is
 /usr/local/share/common-lisp/systems).  Fire up lisp and
@@ -61,22 +67,20 @@
 (asdf:operate 'asdf:load-op :elephant)
 
 This will load and compile Elephant.  This will also
-automatically load UFFI.  You will get some errors about
-redefining constants probably.  Go ahead and redefine them,
-they are safe to bash, and won't happen again once you've
-compiled.
-
-At this point I advise quitting lisp before using Elephant.
-I get symbol conflicts otherwise.  (Help?)  I also (under
-CMUCL) get strange behavior which indicates you might get
-better performance if you compile everything again with
-everything loaded.
+automatically load UFFI.  You may get "constant redefinition
+errors", especially on SBCL.  They are not issues, go ahead
+and redefine the constants.
+
+Under CMUCL I sporadically get strange behavior which
+indicates you might get better performance if you compile
+everything again with everything loaded.
 
 -----------
 Quick Start
 -----------
 
-A REPL session is worth a thousand words, so ...
+For more complete documentation see TUTORIAL and NOTES.  But
+a REPL session is worth a thousand words, so ...
 
 -bash-2.05b$ pwd
 /home/ben
@@ -104,17 +108,14 @@
 CL-USER> (open-store "/home/ben/testdb")
 #<STORE-CONTROLLER {489C1EDD}>
 
-CL-USER> (setq *auto-commit* T)
-T
-
-CL-USER> (add-to-root *store-controller* "my key" "my string")
+CL-USER> (add-to-root "my key" "my string")
 NIL
 
-CL-USER> (get-from-root *store-controller* "my key")
+CL-USER> (get-from-root "my key")
 "my string"
 T
 
-CL-USER> (get-from-root *store-controller* "my key2")
+CL-USER> (get-from-root "my key2")
 NIL
 NIL
 
@@ -144,7 +145,7 @@
 
 CL-USER> (open-store "/home/ben/testdb")
 
-CL-USER> (get-from-root *store-controller* "my key")
+CL-USER> (get-from-root "my key")
 "my string"
 T
 





More information about the Elephant-cvs mailing list