This hasn't helped at all. I don't even have any idea why. I've always avoided using asdf-based software because I find it very confusing.

Here's what happens: I edit my bknr/init.lisp so that the sbcl sections look like:

  (setf (logical-pathname-translations "bknr")
      `(("**;*.*.*"
         ,(merge-pathnames
           (make-pathname :directory '(:relative "bknr-svn" "bknr"  :wild-inferiors)
                          :name    :wild
                          :type    :wild
                          :version :wild)
            asdf:*central-registry*)))

Then, sbcl chokes on that because apparently a single pathname must appear in the position of asdf:*central-registry*. By contrast, if I replace asdf:*central-registry* with (POSIX-GETENV "SBCL_HOME"), then the file loads just fine, but when I do (asdf:oos 'asdf:load-op :bknr), sbcl drops into the debugger with the message "debugger invoked on a ASDF:MISSING-COMPONENT in thread #<THREAD "initial thread" {A744531}>:
  component "bknr" not found"

Why? What should I do to make asdf know about bknr? Bknr is currently installed in $SBCL_HOME/bknr-svn, with the various bknr etc. directories below that.

On 2/14/07, Gary King <gwking@metabang.com> wrote:
OK. I think that the answer is still asdf:*central-registry*. For example, mine is:

("user-home:darcs;asdf-systems;" "/repository/darcs/asdf-systems/"
"/Users/gwking/.asdf-install-dir/systems/"
(MERGE-PATHNAMES ".sbcl/systems/" (USER-HOMEDIR-PATHNAME))
(LET ((ASDF::HOME (POSIX-GETENV "SBCL_HOME")))
   (WHEN ASDF::HOME (MERGE-PATHNAMES "site-systems/" (TRUENAME ASDF::HOME))))
*DEFAULT-PATHNAME-DEFAULTS*)

(the contents of the list are evaluated when asdf searches for systems which is why some of the items are code that will evaluated into a pathname and not pathnames themselves.)

HTH,

On Feb 14, 2007, at 10:38 AM, Marcin Tustin wrote:



On 2/14/07, Gary King <gwking@metabang.com > wrote:
Hi Marcin,

I've not looked at BKNR for a while but when it did, it used ASDF for installation. If this is still the case, then you'll want to include the paths to the BKNR asd files (the system definitions) in the variable asdf:*central-registry*.

I hope this helps; if not, I'm probably misunderstanding the question so please ask again!

My question isn't really a  BKNR one - I just mentioned that for context. I want to know if there is a way to programmatically discover where SBCL keeps contrib code. I want to use this in config files which need to be configured with install paths.


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
Sbcl-help mailing list

--
Gary Warren King, metabang.com 
Cell: (413) 885 9127
Fax: (206) 338-4052
gwkkwg on Skype * garethsan on AIM