SLIME无法从Emacs加载

Koz*_*oss 3 emacs sbcl common-lisp slime

我最近package-list-packages在Emacs中更新了SLIME .但是,当我尝试使用它时M-x slime,我得到这个:

(progn (load "/home/koz/.emacs.d/elpa/slime-20140913.730/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.3081"))

* 
; loading #P"/home/koz/.emacs.d/elpa/slime-20140913.730/swank-loader.lisp"
;; 
;; Error while compiling /home/koz/.emacs.d/elpa/slime-20140913.730/swank/backend.lisp:
;;   Failed to find the TRUENAME of /home/koz/.emacs.d/elpa/slime-20140913.730/swank/backend.lisp:
;;     No such file or directory
;; Aborting.
;; * 
Run Code Online (Sandbox Code Playgroud)

之后我仍然有一个REPL,但我认为这很奇怪,我想知道发生了什么以及为什么.

ech*_*son 5

在Freenode的#lisp频道,我与一位同意MELPA(20140913.730)中当前版本的SLIME被破坏的人交谈过.在我的系统上,缺少整个$ HOME/.emacs.d/elpa/slime-20140913.730/swank /目录,这可能就是为什么它无法编译其中的Lisp文件.

该渠道的其他成员建议从Quicklisp安装SLIME; 我做到了这一点并且有效,尽管SLIME版本有点旧(日期为2014-08-01).这是我做的(我还没有安装Quicklisp); 调整以匹配您的系统和首选项:

  1. 从Emacs的软件包列表中卸载SLIME(执行M-x list-packages,转到SLIME行,按d,然后按x).
  2. 访问http://www.quicklisp.org/beta/并在绿色框中下载文件(在我的情况下,它进入〜/ Downloads).
  3. 将SBCL升级到1.2.2或更高版本.这可能是矫枉过正的.
  4. 发射sbcl.
  5. 评估(load "~/Downloads/quicklisp.lisp").
  6. 评估(quicklisp-quickstart:install); 可选地,如果你不想让它进入〜/ quicklisp,添加:path "~/.quicklisp/"(替换你实际想要安装的任何目录).
  7. 通过评估安装SLIME和SWANK (ql:quickload "swank").
  8. 可选:评估(ql:add-to-init-file)以修补.sbclrc以始终在SBCL中加载Quicklisp.
  9. 用Ctrl+ 退出SBCL D.
  10. 调整您的Emacs配置文件,如SLIME的自述文件所示.对于路径条目,请使用"~/quicklisp/dists/quicklisp/software/slime-2.9"(根据您安装Quicklisp的路径进行调整).
  11. 重新启动Emacs并M-x slime应该工作.