问题标签 [asdf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
222 浏览

windows - 在 Maxima 的 SBCL 中提供 ASDF3

Maxima for Windows 是使用 SBCL 编译的,但不知何故缺少 ASDF3 支持。这是*FEATURES*Maxima 的输出:

它一定是QUICKLISP从我的.sbclrc文件中提取的,它实际上可以加载一些系统,比如ALEXANDRIA. 但是,它无法加载涉及更复杂编译的系统,LAPACK例如MINPACKODEPACK. 例如,

与我的本地 SBCL 安装的功能进行比较,我将问题归结为我的 SBCL 上可用的 ASDF3,但 Maxima 上没有。

我已经设法从 Linux 上的源代码编译了 Maxima,它在那里工作得很好。Windows 上的编译过程相当复杂,如果可以的话,我宁愿避免它。那么,有没有办法以某种方式使 ASDF3 可用?

0 投票
1 回答
1092 浏览

common-lisp - 如何使用 quicklisp 更新依赖项?

我已将 quicklisp 更新到最新版本

CL-USER> (ql:update-all-dists)

1 个要检查的区域。

您已经拥有最新版本的“quicklisp”:2017-06-30。

但这并没有将依赖项更新到最新版本,例如。Hunchentoot 网络服务器的版本是 1.2.35,但由于有错误修复,我需要 1.2.37。

/home/pio/quicklisp/dists/quicklisp/software/hunchentoot-1.2.35/hunchentoot.asd

如何使用 quicklisp 将 Hunchentoot 更新到最新版本 ( https://github.com/edicl/hunchentoot/releases/tag/v1.2.37 )?

0 投票
4 回答
696 浏览

macos - Updating to ASDF 3.x in CLISP

I am trying to update ASDF in CLISP 2.49 (on Mac OS Sierra) to version 3.x. I have now version 2.26 of ASDF. I have tried everything I found online: I downloaded the latest version of ASDF as indicated in https://common-lisp.net/project/asdf/ but then when I eval (require "asdf"), as indicated in the manual (https://common-lisp.net/project/asdf/asdf.html#Upgrading-ASDF) nothing happens, I still have version 2.26. The manual also tells to load the file asdf.lisp, but the file is missing from the new version folder. I discovered that quicklisp had its own version of asdf.lisp and asdf.fas, which seem to be the ones being loaded, but I don't see how to replace them with any new version. I have tried so many things now that I'm afraid I'm screwing the system up.

Does anyone know how to upgrade ASDF to a version >= 3.0 reliably and step by step? Thanks a lot.

0 投票
1 回答
47 浏览

common-lisp - 无法在 CL21 旁边安装 lparallel(?) CL21.CORE.FUNCTION 失败

我有一个奇怪的错误组合。

我正在使用 CL21,我在我的包中,我想安装 lparallel。不可能:

我可以在新会话中重现它,但这有点奇怪:如果我quickloadlparallel in cl-user,它会抱怨找不到符号CL21.CORE.FUNCTION,即使我还没有对 CL21 做任何事情:

所以我 ql:quickload CL21 然后重试加载 lparallel。我得到第一个错误。

但是,我在 Portacle 中尝试了一个新的图像并且......我无法重现这个。

任何想法 ?这是cl21, lparallel,quicklisp还是? 的问题asdf

0 投票
3 回答
1083 浏览

lisp - 如何在 quicklisp 中升级 asdf 版本?

我想编译并运行一个 lisp 源代码来解析 peercoin 区块链,这样我就可以获得前 100 个最富有的地址。我正在使用 lisp 源代码https://github.com/glv2/peercoin-blockchain-parser。我已经在我的系统上安装了 quicklisp,但是在运行下面的代码时抛出错误:

如何更新 asdf 以解决此错误?

0 投票
3 回答
441 浏览

optimization - Common Lisp、asdf、测试、编译不同优化级别的系统

我真正想要的是源内测试定义:

假设我有一个 asdf 系统:

还有另一个系统来测试第一个:

它们之间的唯一区别是在simple-systemI have 1-tests-stubswhere 在simple-system-testsI have 中1-tests-real。在1-tests-stubs我定义了一个宏(defmacro def-test (&rest _args) nil),它在1-tests-real.

现在我想编译simple-systemwith(declare (optimize (safety 0) (debug 0) (speed 3)))simple-system-testswith 相反(declare (optimize (safety 3) (debug 3) (speed 0)))

我该怎么做(在哪里放置以及如何以通用方式为这两个系统设置这些声明)?

如何重用simple-systemin 的定义simple-system-tests(不要重复自己重新键入所有模块/组件)?

而且我必须确保所有文件都针对每个系统使用不同的优化级别重新编译。

此外,如果每个系统文件仅在它们被更改时才重新编译(每个系统的已编译文件的自己的副本?),那将是很好的。

0 投票
1 回答
356 浏览

common-lisp - 我可以(asdf:load-system :foo),但 asdf 仍然抱怨 '"foo" 没有指定一个包'

为了最终开始使用 asdf 进行我的 lisp 涂鸦,我尝试设置一个简单的示例。这些文件是

(其中“foo”实际上是“cl-wav”,但我在本地安装的任何软件包都存在问题)。

现在,即使跑步

有效,当我尝试评估时

我收到此错误消息:

我究竟做错了什么?

就上下文而言,我的 asdf 版本是“3.1.5”,包“foo”与(最新版本的)quicklisp 一起安装,所有这些都发生在 SBCL 1.3.20 中。

0 投票
1 回答
331 浏览

common-lisp - 从 Ceramic:bundle got uiop/run-program:subprocess-error does not find my component (并且没有显示太多)

我想将应用程序与Ceramic捆绑在一起。我可以用它运行应用程序。错误出现在:

它运行...</p>

和崩溃:

但是,日志错误,回溯根本不包含太多信息。有没有办法要求更多?

我做了一个mkdir build/确定。

[![image][1]][1]
(来源:toile-libre.org


鉴于 coredump 的回答:

我从 Ceramic:bundle 的源代码 (with M-.) 中找到对 的调用uiop:run-process,我添加了两个参数并包裹了一个多值绑定:

并再次运行构建命令:

所以似乎构建找不到我的组件“weblocks-todomvc”。这让我感到惊讶,因为我的 .asdf 文件编译正确,我可以运行 Ceramic 窗口,...</p>


鉴于此问题下的评论,我通过添加使 trivial-build 加载我的包,(format nil "(load #p\"/home/vince/projets/weblocks-todomvc/weblocks-todomvc.asd/\"")trivial-build:load-and-build-code得到不同的堆栈跟踪:

0 投票
3 回答
1018 浏览

common-lisp - 使用 ECL 构建可执行文件:缺少依赖项或在 asdf/interface 中找不到 make-build

我正在尝试使用 ECL 构建可执行文件。我查看了文档和其他SO 问题,我们了解到使用 ECL v <= 16.1.3 我们必须添加一个

然后我将我的项目推送到 asdf 注册表:

我加载它:

我的程序显然有 Quicklisp 依赖项。

我将 Quicklisp 的初始化从我的复制.sbclrc~/.eclrc

所以我可以快速加载我的项目:(此步骤未出现在文档中,但这允许找到项目依赖项)

我也

但现在,因为我想构建可执行文件

我得到错误

在#<"ASDF/INTERFACE" package> 中找不到外部符号 MAKE-BUILD。

有人可以帮忙吗?谢谢 !

ECL 16.1.3

ps:而且好像,在REPL中,进入重启nb是没有效果的。


我的生成文件:

结果:


10 月 27 日编辑 - 进度

现在最简单的路径似乎不确定是否使用捆绑到 ECL 中的 ASDF,这将具有该make-build命令。

由于我的 Quicklisp 的初始化代码为~/.eclrc. 我删除了它,现在我有了 ASDF v3.1.8.2,没关系。但是现在,ECL 不知道任何依赖项:

组件 :DEXADOR 未找到,# 需要。

确实,因为不再有 Quicklisp。

ECL 文档说将所有库路径包含到asdf:*central-registry*. 一次偶然的机会,Quicklisp 将所有库安装到~/quicklisp/dists/quicklisp/software/.

首先,我想知道这将如何在 Quicklisp 之前没有运行过的 CI 管道中工作……</p>

然后我看到只添加这个目录是不够的,Dexador的依赖又会找不到,我必须精确地添加dexador的目录:

那么我真的必须编写代码来包含这里的每个目录吗?

当 Quicklisp 以前没有运行过一次时如何使这项工作?

更新:使用与 Roswell 一起安装的 Ecl:require在我的 .eclrc 中的所有内容之前输入 asdf,在 Quicklisp 初始化 3.2.1 和make-build符号未知之后给出版本 3.1.8.2。

使用 Debian 的 Ecl:首先是 v2.33.10,然后是 v3.2.1。

看起来像一个死胡同。

11 月更新:我等待 ASDF 3.3.0 的发布来手动更新。这是越野车。邮件列表上的消息:等待 3.3.1:再次出现错误。

使用lisp-devel Docker 镜像,发布 ECL 16.1.3。(我不想在每个 VPS 上自己编译 ECL)。我可以构建一个可执行文件(重量为 52Mo),但出现运行时错误:

类型条件:在 > 编译文件 NIL 中引用但尚未创建的 SIMPLE-ERROR 包 ((UIOP/STREAM . #))

0 投票
1 回答
439 浏览

common-lisp - 无法启动或重新安装 Quicklisp:ASDF/FIND-SYSTEM::STAMP 未定义

我破坏了我的 CL 环境。我可以运行sbcl,但我无法重新运行或重新安装 Quicklisp(我只是删除了目录~/quicklisp/并希望重新开始)。我收到以下错误:

129 行并没有太大的兴趣,或者看起来是这样。

同样尝试重新安装 Quicklisp。

ASDF 版本 3.2.1,SBCL 1.3.19。

这可能是什么原因?

或者我怎样才能完全正确地重新开始?(考虑隐藏的 .fasl 文件或其他东西)。

谢谢 !

编辑:它下载 asdf 2.26