Domanda

Sto cercando di valutare la risposta fornito qui e viene visualizzato l'errore: " Un file con nome ASDF-INSTALL non esiste " quando si utilizza clisp:

dsm@localhost:~$ clisp -q
[1]> (require :asdf-install)

*** - LOAD: A file with name ASDF-INSTALL does not exist
The following restarts are available:
ABORT          :R1      ABORT
Break 1 [2]> :r1
[3]> (quit)

dsm@localhost:~$ 

cmucl genera un errore simile:

dsm@localhost:~$ cmucl -q
Warning:  #<Command Line Switch "q"> is an illegal switch
CMU Common Lisp CVS release-19a 19a-release-20040728 + minimal debian patches, running on crap-pile
With core: /usr/lib/cmucl/lisp.core
Dumped on: Sat, 2008-09-20 20:11:54+02:00 on localhost
For support see http://www.cons.org/cmucl/support.html Send bug reports to the debian BTS.
or to pvaneynd@debian.org
type (help) for help, (quit) to exit, and (demo) to see the demos

Loaded subsystems:
    Python 1.1, target Intel x86
    CLOS based on Gerd's PCL 2004/04/14 03:32:47
* (require :asdf-install)


Error in function REQUIRE:  Don't know how to load ASDF-INSTALL
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [ABORT] Return to Top-Level.

Debug  (type H for help)

(REQUIRE :ASDF-INSTALL NIL)
Source: 
; File: target:code/module.lisp
(ERROR "Don't know how to load ~A" MODULE-NAME)
0] (quit)
dsm@localhost:~$ 

Ma sbcl funziona perfettamente:

dsm@localhost:~$ sbcl -q
This is SBCL 1.0.11.debian, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* (require :asdf-install)

; loading system definition from
; /usr/lib/sbcl/sb-bsd-sockets/sb-bsd-sockets.asd into #<PACKAGE "ASDF0">
; registering #<SYSTEM SB-BSD-SOCKETS {AB01A89}> as SB-BSD-SOCKETS
; registering #<SYSTEM SB-BSD-SOCKETS-TESTS {AC67181}> as SB-BSD-SOCKETS-TESTS
("SB-BSD-SOCKETS" "ASDF-INSTALL")
* (quit)

Qualche idea su come risolvere questo problema? Ho trovato questo post su Internet, ma l'utilizzo non ha funzionato neanche.

È stato utile?

Soluzione

usa clc: clc-require in clisp. Fare riferimento a "man common-lisp-controller". Ho avuto lo stesso errore in clisp e l'ho risolto usando clc: clc-require. sbcl funziona bene con solo bisogno però.

Altri suggerimenti

Le istruzioni che hai menzionato esplicitamente SBCL, quindi si suppone che funzioneranno meglio usando SBCL, suppongo. Alcuni altri Lisp non vengono con ASDF o non lo collegano a CL: REQUIRE. Nel primo caso, avrai prima caricato ASDF. In quest'ultimo caso, dovrai chiamare (asdf: oos 'asdf: load-op) anziché (richiesto).

wget http://cclan.cvs.sourceforge.net/ checkout /cclan/asdf/asdf.lisp

Vale la pena dare un'occhiata a clbuild. http://common-lisp.net/project/clbuild/

Per avere un server web lisp attivo e funzionante. Hai solo bisogno di:

darcs get http://common-lisp.net/project/clbuild/clbuild
cd clbuild
chmod +x ./clbuild
./clbuild check
./clbuild build slime hunchentoot
./clbuild preloaded

Ora verrà avviato un ricambio lisp. Lì scrivi:

* (hunchentoot:start-server :port 8080)

Verifica della risposta del server:

wget -O - http://localhost:8080/

<html><head><title>Hunchentoot</title></head>
 <body><h2>Hunchentoot Default Page</h2>
  <p>This is the Hunchentoot default page....

prova questo prima di ogni altra cosa:

(require :asdf)

puoi rubare alcune idee dall'ambiente che usiamo. è disponibile all'indirizzo: darcsweb

vedi environment.lisp che carica e configura asdf per noi. (sbcl ha già caricato asdf)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top