Setting the SLIME in emacs

Asked by At

I was trying to install the SLIME. I downloaded the zipped package and according to the README file, I had to put this piece of code in the .emacs file:

 (add-to-list 'load-path "~/hacking/lisp/slime/")  ; your SLIME directory
(setq inferior-lisp-program "/opt/sbcl/bin/sbcl") ; your Lisp system
(require 'slime)

The slime directory is straightforward .What about the Lisp system. How do I find it?

2 Answers

Community On Best Solutions

Some Linuxes come with CMUCL preinstalled, but since you seem to want to use SBCL, you would need to install it.

In terminal, or in Emacs M-xshell. If you are using Debian-like distro, you can use apt-get or aptitude with the following:

$ sudo apt-get install sbcl


$ sudo aptitude install sbcl

on RHEL-like distro:

$ sudo yum install sbcl

After SBCL is installed, you can set inferior-lisp-program to "sbcl".

Also, I'd advise to install SLIME through quicklisp-slime-helper

You would need to install some Lisp you like (let it be SBCL for this purpose, as described above), then, in the same shell do this:

(Suppose you are on a Debian-like Linux)

$ sudo apt-get install wget
$ cd ~/Downloads
$ wget
$ sbcl --load ./quicklisp.lisp

wait until you see Lisp shell prompt,

* (quicklisp-quickstart:install)
* (ql:add-to-init-file)
* (ql:quickload "quicklisp-slime-helper")
* (quit)

now you are back in the regular shell. Launch Emacs, if not open yet. C-f x~/.emacs. Add the lines below to it (instead of what you posted above):

(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")

Or replace "sbcl" with the Lisp implementation you installed.

Look into Quicklisp documentation for more information. You will find that you will be using Quicklisp later anyway, so it's useful you get it all in one place from the start.

Zhao Shenyang On

Top answer is a little bit old.

Nowadays emacs has an official package manager. You can install slime via MELPA repository. First setup MELPA, then M-x package-install RET slime RET.

After that you can set your inferior-lisp-program like the top answer explained.