2014-11-25 6 views
4

Я хочу использовать интерфейс sqlite3clsql. Я уже установил clsql, используя quicklisp. Но когда я пытаюсь запустить:Установка clsql sqlite3 с использованием SBCL + quicklisp

(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] 

Это то же самое, если я просто пытаюсь quicklisp clsql-uffi.

cl-sql, cl-sql-uffi, и libsqlite3-dev установлены. Я использую Ubuntu, Linux.

ответ

5

Редактировать: Разделите проблемные темы более четко.

Установка CLSQL не всегда проста.

  • CLSQL строит внешние библиотеки для своих интерфейсов баз данных, поэтому убедитесь, что вы build-essentials установлены также. Чтобы проверить успешную компиляцию иностранных библиотек (а если нет, проверить сообщение об ошибке), я рекомендую запустить make на терминале в соответствующих каталогах.

  • There's a bug in clsql makefiles that affect certain systems, most notably AWS instances - проверьте, применяется ли это в вашей системе. Исправьте файлы makefiles в каталогах quicklisp clsql по мере необходимости.

  • В более ранних версиях Ubuntu я успешно использовал дистрибутив cl-sql. 14.04+, однако, они обычно не работают слишком хорошо - поэтому установка clsql из quicklisp, вероятно, является лучшей идеей.

+0

Я очистил 'cl-sql' от своей системы, а затем перезапустил слизь и загрузил' clsql' и 'clsql-uffi'. Работали как шарм – Sim