Henrik,

I don't see this as a patch needed in RC1. I'm happy to add more default configurations as examples in the development tree, but it is expected/required that users will customize my-config.sexp to be appropriate for their systems (see Installation chapter) as Lisp does not have enough information to determine where the libs are definitively.

For example, the /opt/local entry is using DarwinPorts on the Mac, but if I installed from source my Mac would have /usr/local/ BerkeleyDB.4.5 as the BDB root. Some linux systems have the libs pre- installed (i.e. via apt-get on Debian) so would use paths

/usr/include
/usr/lib
/usr/lib/libdb.4.5.so
/usr/bin/db45_deadlock

which wouldn't work for the linux build you sent.

Now we could consider providing a list of canonical locations, using the platform & lisp as a hint, and write a routine that searches those locations for the lib and include files prompt the user to fix their my-config.sexp only if it failed. I prefer to make the user do one set of configuration steps in one location so they think through their options, but I'm open to an alternative approach. My thinking is that if we load the wrong lib by accident the error messages are likely to be low-level failures that are very confusing. I think some of the recent list traffic has demonstrated this.

Ian

On May 8, 2007, at 3:01 AM, Henrik Hjelte wrote:

On Mon, 2007-05-07 at 20:11 -0400, Ian Eslick wrote:

For the record, the patches to RC1 thus far are:

Functional:
- fix typo in elephant.asd
- remove linux conditional on -l link option for gcc builds
- Make the elephant code version 0.9.0 instead of 0.6.1
- Update the upgrade version map to accommodate 0.6.0 => 0.9.0 databases

Aesthetic:
- update parameter names for bdb performance tuning in my-config.sexp
- fix typos in manual
- document collect option (and fix bug in that promotion)

Oops, I forgot to tell you about a small change I needed to make to make
elephant RC work on AMD64. Sorry..

In config.sexp, the path /opt/local is something I guess for Macs only.
Also db_deadlock is named db_deadlock without 45 on the Berkeley DB
version I have (from the official source), and the lib file is .so and
not .dylib

So I propose a #linux version of sbcl and allegro for config.sexp (see
below). I guess it is necessary for 0.9.0 for all linux users.

/Henrik


#+(and (or sbcl allegro) (not mswindows) (not windows) (not linux))
((:compiler . :gcc)
 (:berkeley-db-include-dir . "/opt/local/include/db45/")
 (:berkeley-db-lib-dir . "/opt/local/lib/db45/")
 (:berkeley-db-lib . "/opt/local/lib/db45/libdb-4.5.dylib")
 (:berkeley-db-deadlock . "/opt/local/bin/db45_deadlock")
 (:berkeley-db-cachesize . 20971520)
 (:berkeley-db-map-degree2 . t)
 (:clsql-lib-paths . nil)
 (:prebuilt-libraries . nil))

#+(and (or sbcl allegro) linux)
((:compiler . :gcc)
 (:berkeley-db-include-dir . "/usr/local/BerkeleyDB.4.5/include/")
 (:berkeley-db-lib-dir . "/usr/local/BerkeleyDB.4.5/lib/")
 (:berkeley-db-lib . "/usr/local/BerkeleyDB.4.5/lib/libdb-4.5.so")
 (:berkeley-db-deadlock . "/usr/local/BerkeleyDB.4.5/bin/db_deadlock")
 (:berkeley-db-cachesize . 20971520)
 (:berkeley-db-map-degree2 . t)
 (:clsql-lib-paths . nil)
 (:prebuilt-libraries . nil))



_______________________________________________
elephant-devel site list
elephant-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/elephant-devel

_______________________________________________
elephant-devel site list
elephant-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/elephant-devel

Reply via email to