2014-02-09 41 views
3

我想知道如何依赖ASDF系统中特定版本的库?Common Lisp:asdf依赖于特定版本

(asdf:defsystem #:my-system 
    :serial t 
    :description "Describe my-system here" 
    :author "My Name <[email protected]>" 
    :license "Specify license here" 
    :depends-on (#:hunchentoot 
       #:cl-who) 
    :components ((:file "package") 
       (:file "dispatch"))) 

上述系统取决于hunchentoot和cl-who。据我的理解,这两个库的最新版本将被使用。我如何指定使用cl-who 1.0.5(例如)?

在此先感谢。

回答

6
:depends-on ((:version #:hunchentoot "1.2.18") 
      #:cl-who) 

注意,在将被视为1.2.18+版本当前ASDF(3.1版)。

1

您的ASDF系统中的版本声明可用于使ASDF能够检查事情是否良好。

如果您想控制哪些版本被加载,那么您需要控制ASDF在搜索系统时发现的内容。

如果您希望Quicklisp下载并安装特定系统,那么您需要了解如何设置Quicklisp发行版。

+0

你的意思是即使我依赖版本1.2.18和asdf发现版本1.2.24它仍然会加载它?如何告诉quicklisp和asdf然后下载和使用1.2.18版本? –

+0

您可以配置ASDF搜索系统的位置和顺序。所以如果你有一个你渴望找到的第一个,你会很开心。 Quicklisp团队(原文如此)不时发布发行版,即具有特定版本的整套项目。您可能更喜欢旧版本,并且可以将quicklisp配置设置为使用旧版本,请参阅:http://blog.quicklisp.org/2011/08/going-back-in-dist-time.html。 –