如何添加本地项目,航空自卫队的quicklisp配置(How to add a local proj

2019-06-25 22:16发布

我想通过航空自卫队到本地项目添加到已知的项目,但由于该ASDF安装和配置由quicklisp和事实*central-registry*点“#P /家庭/用户/ quicklisp / quicklisp /”,其中包含.lisp文件。 我不知道如何为做手工解释说,一个符号链接到目录会做,但我不想浪费时间内quicklisp。 (它的工作作为一个修补程序,但!)

因此:如何增加其安装和配置quicklisp本地项目,以航空自卫队(不QUICKLISP)?

Answer 1:

如果你使用Quicklisp你也可以使用专用目录~/quicklisp/local-projects/这是其他目录之前扫描。 要使用它,只是把你的项目或一个符号链接。

(quickproject:make-project "~/quicklisp/local-projects/my-new-website/"
  :depends-on '(restas parenscrit cl-who))

(quickproject:make-project "~/src/lisp/my-cool-gui/"
  :depends-on '(qt))

$ ln -s ~/src/lisp/my-cool-gui ~/quicklisp/local-projects/my-cool-gui  

但是,如果你真的想要配置ASDF中不作为解释文档 。

例如,你可以把这个:

(:directory "~/src/lisp/my-project-XYZ/")

在你的~/.config/common-lisp/source-registry.conf.d/my-asdf.conf添加目录,或

(:tree "~/src/lisp/")

如果你想要扫描所有的子目录。



Answer 2:

作为asdf:*central-registry*不只是一个路径,它是路径名的列表。 你可以简单地做: (push "/path-to-your-project/" asdf:*central-registry*) 如果你使用SBCL,你可以加入这行到〜/ .sbclrc。



Answer 3:

的ASDF手册具有在第3节 :

由于ASDF 2,配置航空自卫队在那里发现你的系统的首选方法是源注册表工具,在自己本手册的章节充分说明。 见控制,其中航空自卫队搜索系统 。

在第7项控制,其中航空自卫队搜索系统是

源注册表将从系统配置目录/etc/common-lisp/source-registry.conf.d/被配置,如果它的存在。

这个位置是在Debian和我所用。 默认情况下,Debian却放在在下载CL库的来源/usr/share/common-lisp/source 。 不过,我不知道(尽管我试图找出)这个位置是怎么做知道ASDF。 所以,你可以用路径名文件添加到这个位置,使已知ASDF的路径名。 我添加了一个文件, /etc/common-lisp/source-registry.conf.d/04-local.conf ,含

(:树#P “的/ usr /本地/共享/共口齿不清/源/”)

现在我可以把下载到本地CL库的来源/usr/local/share/common-lisp/source/ ,他们将是可见的ASDL。 的:tree语法描述配置ASDF找到你的系统 。

ASDF:*中央登记*现在贬值。 见小节3.2:配置ASDF找到你的系统-旧样式 。



文章来源: How to add a local project to asdf configured by quicklisp