使用SBCL + quicklisp安装clsql sqlite3

时间:2014-11-25 09:43:46

标签: sqlite common-lisp sbcl quicklisp clsql

我想使用clsqlsqlite3界面。我已经使用quicklisp安装了clsql。但是当我试图跑:

(clsql:with-database (db '("database.db") 
                          :database-type :sqlite3)
  nil)

我得到了

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

如果我尝试快速查看clsql-uffi,那就是一样。

已安装

cl-sqlcl-sql-ufficl-sql-sqlite3libsqlite3-dev。我正在使用Ubuntu,Linux。

1 个答案:

答案 0 :(得分:5)

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

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

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

  • There's a bug in clsql makefiles that affect certain systems, most notably AWS instances - 检查是否适用于您的系统。根据需要将makefile安装在quicklisp的clsql目录中。

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