gpt4 book ai didi

emacs - ASDF 在自定义目录中找不到包

转载 作者:行者123 更新时间:2023-12-04 07:19:41 30 4
gpt4 key购买 nike

我是 Common Lisp 的新手,我在 Windows 10 上使用 Emacs/SLIME,我正试图了解 CL 和 ASDF/打包的工作原理。
我在目录“D:\Dropbox\my-packages”中有一个自定义包“my-pack”。
我在以下位置创建了一个 .conf 文件:

%LOCALAPPDATA%\config\common-lisp\source-registry.conf.d\ 
并添加了这一行:
(:tree "D:\\Dropbox\\my-packages\\")
我打开 Emacs,启动 SLIME 并通过 REPL 创建项目:
(cl-project:make-project #p"D:/Dropbox/my-packages/my-pack)
我验证了项目在目录中,然后用asdf(版本3.3.1)加载系统:
(asdf:load-system :my-pack)
它工作得很好。
但是当我退出并重新启动 Emacs 时,尝试加载系统时出现以下错误:
Component :MY-PACK not found
[Condition of type ASDF/FIND-COMPONENT:MISSING-COMPONENT]
据我所知,我已按照 manual 中的步骤进行操作。 .任何帮助表示赞赏。

最佳答案

  • cl-project的make-project以这一行结尾:

  • (push dir asdf:*central-registry*)
    它将您的新项目的目录添加到此列表中,告诉 ASDF 在哪里寻找项目。重启 CL 时它的值是多少?
    2.
    \config\common-lisp\
    不应该是 .config ?
  • 但是,我不鼓励将此 conf 文件与 :tree 一起使用。 .医生说:

  • tell ASDF to recursively scan all the subdirectories


    因此,想象一下,您尝试自己进行 Web 开发并安装例如带有 npm 或同等功能的 JavaScript 依赖项,您最终会得到一个巨大的 node_modules/。你的 Lisp 现在需要几秒钟才能启动。
    我建议将您的项目放在 ~/common-lisp/ 下或 ~/quicklisp/local-projects ,或创建符号链接(symbolic link),或将自己的项目添加到 asdf:*central-registry*从你的 Lisp 启动文件中:
    ;; .sbclrc
    (pushnew "/home/me/projects/ciel/" asdf:*central-registry* :test #'equal)

    关于emacs - ASDF 在自定义目录中找不到包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68585899/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com