如何告诉asdf使用.asd文件的目录作为项目的根目录

时间:2012-06-13 11:53:57

标签: common-lisp asdf

我正在尝试使用自制的.asd文件加载我的项目,但不知何故,asdf无法识别.asd文件也应该是项目的根目录,因此会导致{{1}这样的错误其中failed to find the TRUENAME of /home/$USER/rel-path-to-file是相应文件的路径,相对于加载的.asd文件。

这就是我所做的:

rel-path-to-file

然后

(push "path-to-project-directory-of-asd-file" asdf:*central-registry*)

它找到我的.asd文件,但不知道它应该加载的.lisp文件。

asdf已由quicklisp配置和安装。因此,我还使用符号链接将项目“安装”到quicklisp中,这也很有用。它使用(asdf:load-system 'project-name) 找到.asd文件,但仍然不使用包含.asd文件的目录作为项目根目录。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

Lisp路径名在历史上是这样的,它们要求你在目录名后添加一个斜杠(我被告知这是因为在我出生之前创建的操作系统),所以为了告诉Lisp你的目标您必须使用斜杠结束名称的目录。

答案 1 :(得分:0)

请参阅asdf:system-relative-pathname。