FirstStepsWithAsdfAndAsdfInstall
THIS PAGE IS OBSOLETE. PLEASE SEE ASDF 2's MANUAL INSTEAD.

Here are simple first steps in downloading and using ASDF and ASDF-INSTALL.

This is a crash Tutorial for ASDF and ASDF-Install.

For normal usage, you would have them already downloaded and installed, and you would just need to put the configuration forms (setting ASDF:*CENTRAL-REGISTRY*, ASDF-INSTALL:*LOCATIONS* and ASDF-INSTALL:*PREFERRED-LOCATION* in your rc file (eg. ~/.clisprc, ~/.sbclrc, etc depending on your implementation).


[pjb@simias :0.0 tmp]$ <b>mkdir cl</b>
[pjb@simias :0.0 tmp]$ <b>cd cl</b>
[pjb@simias :0.0 cl]$ <b>wget http://common-lisp.net/project/asdf/asdf.tar.gz</b>
--2009-06-18 13:48:30--  http://common-lisp.net/project/asdf/asdf.tar.gz
Resolving common-lisp.net... 208.72.159.207
Connecting to common-lisp.net|208.72.159.207|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 91959 (90K) [application/x-tar]
Saving to: `asdf.tar.gz'

     0K ...........                                       100%  104K=0.9s

2009-06-18 13:48:31 (104 KB/s) - `asdf.tar.gz' saved [91959/91959]

[pjb@simias :0.0 cl]$ <b>tar zxvf asdf.tar.gz</b>
asdf/
asdf/.gitattributes
asdf/.gitignore
asdf/GNUmakefile
asdf/LICENSE
asdf/README
asdf/asdf-install.lisp
asdf/asdf.lisp
...
[pjb@simias :0.0 cl]$ <b>wget http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz</b>
--2009-06-18 13:48:55--  http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz
Resolving common-lisp.net... 208.72.159.207
Connecting to common-lisp.net|208.72.159.207|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 84270 (82K) [application/x-tar]
Saving to: `asdf-install_latest.tar.gz'

     0K ..........                                        100% 76.3K=1.1s

2009-06-18 13:48:57 (76.3 KB/s) - `asdf-install_latest.tar.gz' saved [84270/84270]

[pjb@simias :0.0 cl]$ <b>tar zxvf asdf-install_latest.tar.gz </b>
asdf-install/
asdf-install/asdf-install/
asdf-install/asdf-install/asdf-install.asd
...
[pjb@simias :0.0 cl]$ <b>clisp -norc</b>
  i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo
  I I I I I I I      8     8   8           8     8     o  8    8
  I  \ `+' /  I      8         8           8     8        8    8
   \  `-+-'  /       8         8           8      ooooo   8oooo
    `-__|__-'        8         8           8           8  8
        |            8     o   8           8     o     8  8
  ------+------       ooooo    8oooooo  ooo8ooo   ooooo   8

Welcome to GNU CLISP 2.47 (2008-10-23) <http://clisp.cons.org/>

Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright (c) Bruno Haible, Sam Steingold 1999-2000
Copyright (c) Sam Steingold, Bruno Haible 2001-2008

Type :h and hit Enter for context help.

[1]> <b>(load "asdf/asdf.lisp")</b>
;; Loading file asdf/asdf.lisp ...
;; Loaded file asdf/asdf.lisp
T
[2]> <b>(push (truename #P"asdf-install/asdf-install/") asdf:*central-registry*)</b>
(#P"/tmp/cl/asdf-install/asdf-install/" *DEFAULT-PATHNAME-DEFAULTS*)
[3]> <b>(asdf:oos 'asdf:load-op :asdf-install)</b>
; loading system definition from asdf-install/asdf-install/asdf-install.asd into #<PACKAGE ASDF0>
;; Loading file asdf-install/asdf-install/asdf-install.asd ...
; registering #<SYSTEM ASDF-INSTALL #x000333D0D9C0> as ASDF-INSTALL
...
;;; ASDF-Install version 0.6.10
0 errors, 0 warnings
NIL
[20]> <b>(setf asdf-install:*LOCATIONS*  `((,(truename #P"site/") ,(truename #P"systems/") "Test location")))</b>
((#P"/tmp/cl/site/" #P"/tmp/cl/systems/" "Test location"))
[22]> <b>(push (truename #P"systems/") asdf:*central-registry*)</b>
(#P"/tmp/cl/systems/" #P"asdf-install/asdf-install/" *DEFAULT-PATHNAME-DEFAULTS*)
[27]> <b>(asdf-install:install :xmls)</b>
Install where?
1) Test location: 
   System in /tmp/cl/systems/
   Files in /tmp/cl/site/ 
0) Abort installation.
 --> <b>1</b>
;;; ASDF-INSTALL: Downloading 58339 bytes from http://common-lisp.net/project/xmls/xmls-1.2.tar.gz to /home/pjb/asdf-install-0.asdf-install-tmp ...
;;; ASDF-INSTALL: Downloading 189 bytes from http://common-lisp.net/project/xmls/xmls-1.2.tar.gz.asc to /home/pjb/asdf-install-1.asdf-install-tmp ...
gpg: Signature made Mon Sep 27 23:04:54 2004 CEST using DSA key ID 01F53D51
[GNUPG:] SIG_ID lkbGVD4LLHMxrXBd3I7+gnPMhyE 2004-09-27 1096319094
[GNUPG:] GOODSIG 53826AFF01F53D51 Miles Egan <miles@caddr.com>
gpg: Good signature from "Miles Egan <miles@caddr.com>"
[GNUPG:] VALIDSIG E32324E0932E9419797ED8B353826AFF01F53D51 2004-09-27 1096319094 0 3 0 17 2 00 E32324E0932E9419797ED8B353826AFF01F53D51
[GNUPG:] TRUST_UNDEFINED
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: E323 24E0 932E 9419 797E  D8B3 5382 6AFF 01F5 3D51

*** - MAKE-STRING-INPUT-STREAM: argument NIL is not a string
The following restarts are available:
USE-VALUE      :R1      Input a value to be used instead.
INSTALL-ANYWAYS :R2     Don't check GPG signature for this package
RETRY-GPG-CHECK :R3     Retry GPG check (e.g., after downloading the key)
ABORT          :R4      Abort main loop
Break 1 [28]> <b>:r2</b>
;;; ASDF-INSTALL: Installing XMLS in /tmp/cl/site/, /tmp/cl/systems/
"ln -s \"/tmp/cl/site/xmls-1.2/xmls.asd\" \"/tmp/cl/systems/xmls.asd\""
;;; ASDF-INSTALL: Found system definition: /tmp/cl/site/xmls-1.2/xmls.asd
;;; ASDF-INSTALL: Loading system ASDF-INSTALL::XMLS via ASDF.
; loading system definition from /tmp/cl/site/xmls-1.2/xmls.asd into #<PACKAGE ASDF0>
;; Loading file /tmp/cl/site/xmls-1.2/xmls.asd ...
; registering #<SYSTEM :XMLS #x000333D977E8> as XMLS
;; Loaded file /tmp/cl/site/xmls-1.2/xmls.asd
;; Compiling file /tmp/cl/site/xmls-1.2/xmls.lisp ...
;; Wrote file /tmp/cl/site/xmls-1.2/xmls.fas
;; Loading file /tmp/cl/site/xmls-1.2/xmls.fas ...
;; Loaded file /tmp/cl/site/xmls-1.2/xmls.fas
0 errors, 0 warnings
(ASDF-INSTALL::XMLS)
[29]> <b>(asdf:oos 'asdf:load-op :xmls)</b>
0 errors, 0 warnings
NIL
[32]> <b>(do-external-symbols (s :xmls) (print s))</b>

XMLS:NODE-CHILDREN 
XMLS:NODE-ATTRS 
XMLS:TOXML 
XMLS:WRITE-XML 
XMLS:MAKE-NODE 
XMLS:NODE-NS 
XMLS:PARSE 
XMLS:NODE-NAME 
NIL
[33]> 


Topics: Tutorial, asdf, Asdf-install