Apparently, this is a common problem, but I've yet to find a solution
that works. I'm trying to get ASDF running with Clisp 2.41 on Windows
XP. I'm not concerned about using ASDF-install, I just want basic
ASDF loading capabilities.
I've followed the directions at http://cliki.net/asdf and I still
can't get it to work. My .clisprc.init file is as follows:
(load #P"C:\\emacs\\clisp-2.41-win32-with-readline-and-gettext\
\clisp-2.41\\asdf.lisp")
(push #P"C:\\emacs\\asdf" asdf:*central-registry*)
I have several shortcuts in my C:\emacs\asdf directory that all point
to the various CFFI ASD files that I want to load. However, when I
try to run ASDF like so:
(asdf:oos 'asdf:load-op 'cffi)
I get a message saying "component 'cffi' not found".
I've Googled for ways to set ASDF up, and I've gotten a lot of
conflicting solutions; some people say Windows-style shortcuts work,
some say they don't, etc. If anyone could tell me how to get this
working properly, I'd appreciate it.
On Mar 21, 5:31 pm, Jimmy Miller <··············@gmail.com> wrote:
> I've Googled for ways to set ASDF up, and I've gotten a lot of
> conflicting solutions; some people say Windows-style shortcuts work,
> some say they don't, etc. If anyone could tell me how to get this
> working properly, I'd appreciate it.
On Windows I use the method listed on http://www.cliki.net/asdf under
the heading "Alternative Sysdef Search functionality". Although I
suspect this may start to grind a little with hundreds of libraries
installed, it works very well with the 20-30 I have on my Windows
machine.
In fact, I found it worked so well (and I'm so lazy) that I use this
technique on Linux too where I do most of my work.
HTH.
--
Phil
http://phil.nullable.eu/
On Mar 21, 12:46 pm, ···············@gmail.com wrote:
> On Mar 21, 5:31 pm, Jimmy Miller <··············@gmail.com> wrote:
>
> > I've Googled for ways to set ASDF up, and I've gotten a lot of
> > conflicting solutions; some people say Windows-style shortcuts work,
> > some say they don't, etc. If anyone could tell me how to get this
> > working properly, I'd appreciate it.
>
> On Windows I use the method listed onhttp://www.cliki.net/asdfunder
> the heading "Alternative Sysdef Search functionality". Although I
> suspect this may start to grind a little with hundreds of libraries
> installed, it works very well with the 20-30 I have on my Windows
> machine.
>
> In fact, I found it worked so well (and I'm so lazy) that I use this
> technique on Linux too where I do most of my work.
>
> HTH.
>
> --
> Philhttp://phil.nullable.eu/
Thanks for the reply, but ASDF still gives me the same error message.
My .clisprc.init file is now as follows:
(load #P"C:\\emacs\\clisp-2.41-win32-with-readline-and-gettext\
\clisp-2.41\\asdf.lisp")
;; An alternative to the standard sysdef search can be defined.
This
;; code below can be dropped into your Lisp init files and
customized.
;; It will search for all ASDF systems in subdirectories of
the
;; specified directories. That lets you simply "drop-in" new
packages
;; into one of the specified directories, and it will be available
for
;; loading without any further
steps.
(in-package #:asdf)
(defvar *subdir-search-registry* '(#p"C:\\emacs")
"List of directories to search subdirectories within.")
(defvar *subdir-search-wildcard* :wild
"Value of :wild means search only one level of subdirectories; value
of :wild-inferiors means search all levels of subdirectories (I don't
advise using this in big directories!)")
(defun sysdef-subdir-search (system)
(let ((latter-path (make-pathname :name (coerce-name system)
:directory (list :relative
*subdir-search-
wildcard*)
:type "asd"
:version :newest
:case :local)))
(dolist (d *subdir-search-registry*)
(let* ((wild-path (merge-pathnames latter-path d))
(files (directory wild-path)))
(when files
(return (first files)))))))
(pushnew 'sysdef-subdir-search *system-definition-search-functions*)
I noticed that ASDF takes more time in searching for the file, but it
still doesn't find it. I have all the .asd files in a folder in the C:
\emacs directory, so that should only be one level down. Any more
ideas?
On Mar 21, 6:02 pm, Jimmy Miller <··············@gmail.com> wrote:
[snip]
> (defvar *subdir-search-registry* '(#p"C:\\emacs")
> "List of directories to search subdirectories within.")
[snip]
Try giving that pathname in *subdir-search-registry* a trailing
backslash '(#p"C:\\emacs\\"). That the only thing I can think of...
--
Phil
http://phil.nullable.eu/