You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASDF系统uffi版本不匹配引发CLSQL运行错误的原因及解决方法

问题原因
  1. ASDF版本匹配采用严格字符串比对:CLSQL-UFFI依赖要求UFFI版本为"2.0",但你安装的UFFI版本是"2.0.0",两者字符串不一致,ASDF判定版本不兼容。
  2. 即使修改了local-projects里的UFFI版本,ASDF可能仍在使用缓存的旧版本信息,或者Quicklisp仓库版本优先级高于本地项目,导致加载的还是原版本的UFFI。
修复方法

方法一:修改CLSQL-UFFI的依赖版本要求

  • 找到Quicklisp中clsql-uffi.asd的路径(通常是quicklisp/dists/quicklisp/clsql/clsql-uffi.asd)
  • 打开文件,将依赖项里的(:version uffi "2.0")修改为(:version uffi "2.0.0"),或者直接简化为uffi(取消版本限制)
  • 重新加载CLSQL-UFFI系统:
(asdf:load-system :clsql-uffi :force t)

方法二:配置ASDF使用语义化版本匹配

ASDF 3.3.1支持通过配置启用语义化版本比对,让它认为"2.0.0"兼容"2.0":

  • 在你的SBCL初始化文件(如~/.sbclrc)中添加以下代码:
(setf asdf:*version-suffix-separator* ".")
  • 重启SBCL,重新加载CLSQL和UFFI系统即可。

方法三:强制加载本地修改后的UFFI版本

  • 确认local-projects中的UFFI.asd文件里的版本已改为"2.0"
  • 清除ASDF的系统缓存并强制加载本地版本:
(asdf:clear-system :uffi)
(ql:register-local-projects) ; 确保本地项目优先级高于Quicklisp仓库
(asdf:load-system :uffi :force t)
  • 之后重新加载CLSQL系统:
(asdf:load-system :clsql :force t)

内容的提问来源于stack exchange,提问作者klk2ptx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 08:40:08