[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SLIB and ice-9 slib module
From: |
Sebastian Tennant |
Subject: |
SLIB and ice-9 slib module |
Date: |
Wed, 19 Mar 2008 01:30:51 +0200 |
User-agent: |
Gnus/5.110007 (No Gnus v0.7) Emacs/22.1 (gnu/linux) |
Hi all,
A Debian box with an apt-installed guile-1.8:
/usr/share/guile/1.8
An apt-installed slib:
/usr/share/slib
Created symlink:
/usr/share/guile/1.8/slib -> /usr/share/slib
Set environment variables:
export GUILE_IMPLEMENTATION_PATH="/usr/share/guile/1.8/"
export SCHEME_LIBRARY_PATH="/usr/share/slib/"
(also tried not setting SCHEME_LIBRARY_PATH, and setting it to
/usr/share/guile/1.8/slib)
but I get this every time:
guile> (use-modules (ice-9 slib))
ERROR: Unbound variable: slib:features
ABORT: (unbound-variable)
SLIB works fine with:
$ slib guile
or
$ guile -l /usr/share/slib/guile.init
Upon inspection, ice-9's documentation is wrong in saying:
2. Define the `SCHEME_LIBRARY_PATH' environment variable:
$ SCHEME_LIBRARY_PATH=/usr/local/lib/slib
$ export SCHEME_LIBRARY_PATH
-> Alternatively, you can create a symlink in the Guile directory to
SLIB, e.g.:
ln -s /usr/local/lib/slib /usr/local/share/guile/1.8/slib
because the function slib-parent-dir (upon which slib's 'vicinities' are
based) searches the %load-path and uses substring, in which case only a
symlink will do.
(define slib-parent-dir
(let* ((path (%search-load-path "slib/require.scm")))
(if path
(substring path 0 (- (string-length path) 17))
(error "Could not find slib/require.scm in " %load-path))))
Having said that, even with the symlink it still fails, so I give up.
Sebastian
- SLIB and ice-9 slib module,
Sebastian Tennant <=