要求不在〜/ common-lisp /子目录中加载asdf系统

时间:2017-03-06 18:53:29

标签: common-lisp asdf

(require:your-system)不加载系统,但系统存在于asdf标准目录〜/ common-lisp /中。

CL-USER> (require :your-system)
Don't know how to REQUIRE YOUR-SYSTEM.
   [Condition of type SB-INT:EXTENSION-FAILURE]

〜/ common-lisp / log-simple / YOUR-SYSTEM.asdf:

(in-package :cl-user)
(defpackage log-simple-asd
  (:use :cl :asdf))
(in-package :log-simple-asd)

(defsystem log-simple
 ...)

2 个答案:

答案 0 :(得分:1)

你先(require "asdf")了吗? 如果你没有,那就做。 如果你这样做了,最好明确地调用(asdf:load-system ...)而不是(require ...)隐含地调用它。

答案 1 :(得分:0)

当asdf进程目录包含具有不同代码库的文件(例如:utf-8)而不是asdf时,跳过它而不显示任何错误或警告。您可以在〜/ .sbclrc文件中设置默认格式,例如:

(setf sb-alien::*default-c-string-external-format* :utf-8)