如何使用SBCL安装lispbuilder-sdl?

时间:2014-08-17 02:09:30

标签: windows install lisp sdl sbcl

所以我正在阅读来自lispbuilder-sdl网站的一些文档,它似乎非常令人困惑,因为它表示"安装到:..." 任何人都可以给我一些关于如何在Windows PC上安装带有SBCL的lispbuilder-sdl的详细说明吗?

文档: https://code.google.com/p/lispbuilder/wiki/WindowsSBCL

2 个答案:

答案 0 :(得分:4)

简介

好的,既然这个LispBuilder可能真的很有意思,那就让我们试一试。

在这里,我使用的是Windows 7和SBCL 1.2.1。假设您的系统已成功安装SBCL,请跳过步骤Install SBCL

Installing CFFI and Dependencies

我们需要安装CFFI及其依赖项。 Here is tarballs。我们需要cffi_latest.tar.gz

接下来,我们需要Babel。但是它有什么用呢?官方下载页面显示' 404 Not Found'。不好了。从GitHub获取zip存档。

获取Alexandria。由于其他链接确实已过时,请将it form GitHub作为zip存档。

我们还需要Trivial Features。再次来自GitHub。由于此库的作者创建了版本,我更喜欢从release page下载它。

好的,现在解压并解压这四个图书馆。因此,例如,我有以下目录:

  

亚历山大主
  巴别塔主
  cffi_0.13.0
  琐碎的功能-0.7

接下来,我们必须将所有内容移到“网站”中。 SBCL的指挥权。它是什么以及它在Windows上的位置?我认为'网站'就像' site-lisp'对于Emacs。 SBCL documentation对此目录的解释并不是很友好。也许,它根本与SBCL毫无关系。好吧,让我们在SBCL的安装目录中创建它,例如:

  

C:\ Program Files \ Steel Bank Common Lisp \ 1.2.1 \ site \

然后,让我们将所有内容放入此目录并重命名子目录,如手册中所示:

  

alexandria-master - >亚历山大
  babel-master - >巴贝尔
  cffi_0.13.0 - > CFFI
  平凡特征-0.7->琐碎的功能

Install LISPBUILDER-SDL and Binaries

好的,让我们从here下载LispBuilder。 Lotsa在这里,我想我们需要this,还需要this

将这些档案解压缩到' site'目录:

  

C:\ Program Files \ Steel Bank Common Lisp \ 1.2.1 \ site \ lispbuilder-sdl \

Create an SBCL System Initialization File

创建文件' sbclrc'在SBCL安装目录中,包含以下内容:

(require :asdf)

;; put all subdirectories of [SBCL]\site\ into asdf:*central-registry*
(dolist (dir (directory "[SBCL]\\site\\*\\"))
  (pushnew dir asdf:*central-registry* :test #'equal))

;; load lispbuilder-sdl
(asdf:operate 'asdf:load-op :lispbuilder-sdl)
(asdf:operate 'asdf:load-op :lispbuilder-sdl-binaries)

Try the Examples

这是我最喜欢的部分。启动SBCL,它应该编译很多东西。等一下。当你看到类似的东西时:

;
; compilation unit finished
;   caught 502 STYLE-WARNING conditions
;   printed 13 notes
*

这是玩乐的时间:

* (asdf:operate 'asdf:load-op :lispbuilder-sdl-examples)

此命令将编译并加载示例。手动建议尝试:

* (sdl-examples:mandelbrot)

作品。看起来像一些分形图。

答案 1 :(得分:1)

使用Quicklisp

(ql:system-apropos "lispbuilder")

显示可用(子)系统。使用ql:quickload安装。