【问题标题】:I can't set-up and configure Common LISP (SBCL) on Windows我无法在 Windows 上设置和配置 Common LISP (SBCL)
【发布时间】:2012-10-16 21:34:41
【问题描述】:

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

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

C:\home 中的两个目录 - bin, usr。

在bin目录中;

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:\home\bin\emacs\site-lisp\site-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 输入 slime 时,它​​说不匹配,如下所示; “M-x slime [不匹配]​​”。

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

谢谢。

【问题讨论】:

    标签: windows lisp common-lisp


    【解决方案1】:

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

    检查内容:

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

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

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

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

    当你解决了这两个问题后,再次尝试加载 SLIME,就像你之前尝试过的那样。

    M-: 这样的键表示“按下元键并按住它的同时按 Shift 和分号”,像 C-x b 这样的键表示“按控制键,按住它的同时按“x”,同时松开它们并按“b”。元键通常是 Alt 键,但也使用 ESC。

    【讨论】:

    • 非常感谢您的帮助。我按照你说的做了,它已经启动并运行了。我收到提示:“非常感谢您的帮助。现在 lisp 正在运行,我刚刚完成。
    • 我按照你说的检查了。 "M-:(getenv "HOME")" 首先显示 c:\home,然后我将 .emacs 文件复制到 c:\home 并调用 emacs,输入 M-x slime。第一次它显示很多错误,例如轮询并且数字正在增加,所以我再次重新启动,这次它出现了 "; C:\home\.slime\fasl\2012-10-14\sbcl-1.0.13-no- threads-win32-x86\contrib\swank-mrepl.fasl 编写;编译在 0:00:00 完成;;Swank 在端口:4925 开始。CL-USER> (+ 2 2) 4 CL-USER> :))
    猜你喜欢
    • 2013-06-27
    • 1970-01-01
    • 2017-02-27
    • 2015-09-30
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多