如何使用quicklisp更新依赖项?

时间:2017-07-02 10:30:15

标签: common-lisp sbcl quicklisp asdf hunchentoot

我已将quicklisp更新为lates版本

  

CL-使用者> (ql:update-all-dists)

     

1 dist检查。

     

您已经拥有最新版本的" quicklisp":2017-06-30。

     

NIL

但是这并没有更新到最新版本的依赖项,例如。 Hunchentoot webserver是版本1.2.35,但由于修正错误,我需要1.2.37。

  

/home/pio/quicklisp/dists/quicklisp/software/hunchentoot-1.2.35/hunchentoot.asd

如何使用quicklisp将Hunchentoot更新到最新版本(https://github.com/edicl/hunchentoot/releases/tag/v1.2.37)?

1 个答案:

答案 0 :(得分:1)

Ql:quickload将首先向ASDF询问本地可用系统,该系统发生在defined order

我通常在我的home中有一些目录,我会在那里手动检查我需要的项目或系统。我让这些目录为ASDF所知,然后就可以了。

要使ASDF知道目录,您可以使用文件~/.config/common-lisp/source-registry.conf

(:source-registry
  (:tree (:home "repos"))
  :inherit-configuration)

这将使ASDF知道.asd目录下的任何~/repos/文件。然后,您可以使用asdf:load-systemql:quickload加载此类系统(后者也将解析并下载缺少的依赖项)。

如果quicklisp已经在不同的版本中安装了系统,并且ASDF恰好首先找到该版本,那么您可能需要事先ql:uninstall