我无法在Windows上设置和配置Common LISP(SBCL)

时间:2012-10-16 21:34:42

标签: windows lisp common-lisp

我想在Windows上运行常见的lisp(SBCL),但我不能。 我是新手,这是我第一次尝试 运行lisp,我已按照指令试过了 以下链接已给出; http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and-slime-on-windows-xp/

我下载了工作人员并进行了相应的安装 这是我安装后的目录树:

C:\ home - bin,usr。

中的两个目录

在bin dir;

C:\home\bin\emacs\site-lisp\slime
C:\home\bin\SBCL-1.0.13\

和四个空目录:doc,info,lisp,site 在c:\ home \ usr

我的道路是;

PATH      C:\home\bin\SBCL-1.0.13\;C:\home\bin\emacs\bin\;
SBCL_HOME C:\home\bin\SBCL-1.0.13\

根据指示,我创造了 并放置了一个文件,site-start.el就像; C:\家\ BIN \ emacs的\站点口齿不清\站点start.el

site-start.el包含以下行:

(setenv "HOME" "C:/home/")

创建另一个文件,.emacs包含以下内容;

(setq inferior-lisp-program "sbcl")
(add-to-list 'load-path "c:/home/bin/emacs/site-lisp/slime/")
(require 'slime)
(slime-setup)

它已自动保存在C:\ Documents and Settings \ Administrator \ Application data \ 当我使用 Ctrl x Ctrl s 来保存它。

当我通过输入c:\ home \ bin \ emacs \ bin \ emacs.exe来调用emacs时, Emacs出现,当我输入 Esc - 时,提示“ M-x ”出现在底部,当我用M-x键入粘液时,它表示不匹配如下; “M-x粘液 [不匹配]​​ ”。

请告诉我如何调用适当的lisp环境 并执行简单的lisp代码,如(+ 2 2)以查看结果。

谢谢。

1 个答案:

答案 0 :(得分:1)

(setenv "HOME" "C:/home/")将Emacs的环境变量$HOME设置为C:/ home目录。如果Emacs将.emacs文件保存到其他目录 - 这意味着它没有加载site-start.el文件,因此,它没有加载.emacs文件。

要检查的内容:

  1. 执行 M - : (getenv "HOME") - 这应该打印“C:/ home”,但如果没有,请再次执行 M - :< / kbd> (mapcar #'message load-path) Cx b *Messages*并查看它打印的目录列表。您的site-start.el文件必须位于其中一个目录中。

  2. 打开Windows shell终端窗口: Win R 并键入cmd.exe。这应该打开终端窗口,其中运行Windows shell。输入sbcl。如果您看到许可证文本和提示符(通常是SBCL中的星号字符) - 它没关系,否则,您可能需要重新启动系统才能使对环境变量所做的更改生效。如果您不想重新启动,可以执行以下操作:

    set PATH=C:/path/to/sbcl;%PATH%

  3. 在您想要启动SBCL的同一个shell窗口中。但是,您需要将inferior-lisp-program变量设置为SBCL可执行文件的完整路径,直到重新启动。

    如果您对这两个进行了整理,请再次尝试加载SLIME,就像之前尝试过的那样。

    M - 这样的键意味着“按下元键并按住它,按Shift和分号”,像 Cx b 这样的键意味着“按下控制键” ,按住它,按“x”,释放它们并按“b”。元键通常是Alt键,但也使用ESC。