使用SBCL + quicklisp安装clsql sqlite3

Sim*_*Sim 4 sqlite sbcl common-lisp clsql quicklisp

我想使用clsqlsqlite3接口.我已经使用quicklisp 安装了.但是当我尝试运行时:clsql

(clsql:with-database (db '("database.db") 
                          :database-type :sqlite3)
  nil)
Run Code Online (Sandbox Code Playgroud)

我明白了

OPERATION-ERROR while invoking #<COMPILE-OP > on
#<CLSQL-UFFI-SOURCE-FILE "clsql-uffi" "uffi" "clsql_uffi">
   [Condition of type ASDF/BACKWARD-INTERFACE:OPERATION-ERROR]
Run Code Online (Sandbox Code Playgroud)

如果我只是试着赶紧行动,那就是一样的clsql-uffi.

cl-sql,cl-sql-uffi,cl-sql-sqlite3libsqlite3-dev安装.我正在使用Ubuntu,Linux.

jla*_*ahd 5

编辑:更清楚地分离问题主题.

安装CLSQL并不总是那么简单.

  • CLSQL为其数据库接口构建外部库,因此请确保已build-essentials安装.要检查外部库是否成功编译(如果没有,检查错误消息),我建议make在相应目录中的终端上运行.

  • clsql makefile中存在一个影响某些系统的错误,最明显的是AWS实例 - 检查是否适用于您的系统.根据需要将makefile安装在quicklisp的clsql目录中.

  • 在早期的Ubuntu版本中,我成功使用了cl-sql包的分发版.然而,在14.04+,它们通常不能很好地工作 - 所以clsql从quicklisp安装可能是一个更好的主意.