Common-lisp集成环境搭建

缘由:学习common-lisp过程中,一般都是在我本地的虚拟机中,用的lispbox(由于参考书很老)。最近有需求在我的远程服务器上跑(ubuntu,在美国的虚拟主机,原因大家都知道的)。安装好lispbox后,发现无法在远程ssh工具上打开,换工具测试,还是不行。应该是lispbox项目都被废弃的,没有维护造成的原因。而且emacs版本才23

手动安装common-lisp环境(linux-64 + emacs-24.5 + slime + sbcl-1.3.1+quicklisp)

1.安装好emacs

  由于我是在ubuntu中,直接apt-get install emacs

  如果是在centos ,redhat 中 yum install emacs。emacs版本可能不一样,但是23的也没问题

2.安装slime

  由于上传速度太慢,而我的主机ubuntu在美国,所以我用git clone下来的,你也可以用其他办法下载下来如wget 。

  注意a:slime的路径问题

    先切换到该用户的根路径:cd ~    cd .emacs.d    找到site-lisp目录(其实不一定要是这个名字),如果没有创建一个。然后进入site-lisp 将slime放在这里 如 : git clone https://github.com/slime/slime.git

 

3.安装sbcl(这里可以换各种common-lisp方言)

  按照官方推荐安装在/usr/local/  目录下  (注意下载版本要和机器匹配如32 -86 64 -86_64) 下在后解压 

wget http://prdownloads.sourceforge.net/sbcl/sbcl-1.3.1-x86-64-linux-binary.tar.bz2 

bzip2 -cd sbcl-1.3.1-x86-linux-binary.tar.bz2 | tar xvf -
安装:
cd sbcl-1.3.1-x86-linux
sh install.sh

安装好后,会提示sbcl的路径 :我的是在:/usr/local/bin  记录下这个路径,如果忘了 which sbcl
查看。在shell 中运行sbcl 会出现sbcl的版本信息,表示安装成功,(quit)退出

4.配置emacs
  返回~根目录 cd ~  找到一个叫.emacs的文件(有的人没有),没有的话创建一个,emacs .emacs
  将下面的内容复制上去
;; setup load-path and autoloads
           (add-to-list 'load-path "~/.emacs.d/site-lisp/slime")
           (require 'slime-autoloads)
 
      ;; Set your lisp system and, optionally, some contribs
         (setq inferior-lisp-program "/usr/local/bin/sbcl") 
(setq slime-contribs '(slime-fancy))
 
ctrl+x ctrl+s保存内容修改
ctrl+x ctrl+c退出emacs编辑器。这个你们都会的
说明:其实观察.emacs文件的内容,你们就知道什么意思了,可以自己修改slime安装路径,和sbcl的路径
 
运行emacs M-x slime就可以看到 CL-USER>
 

配置完成!

5.安装quicklisp包管理器(参考https://www.quicklisp.org/beta/)----自备梯子

    在shell下运行  :

curl -O https://beta.quicklisp.org/quicklisp.lisp
    验证quicklisp.lisp的完整性:

curl -O https://beta.quicklisp.org/quicklisp.lisp.asc
gpg --verify quicklisp.lisp.asc quicklisp.lisp
        good singnatrue---- 表示通过验证

进入emacs    M-x  slime  进入CL-USER>

, cd 选择工作目录。最好是把刚才下载的文件quicklisp.lisp 拷贝到工作目录里。

(load “quicklisp.lisp”)   //如果没有找到这个文件会报错提示(此时是在sbcl的REPL中)


(quicklisp-quickstart:install)
安装完成

启动common-lisp时自动加载quicklisp


(ql:add-to-init-file)


//quicklisp的使用

To load software, use:

(ql:quickload system-name)

To remove software, use:

(ql:uninstall system-name)

To find out what's available in Quicklisp, use:

(ql:system-apropos substring)

To load Quicklisp when you start Lisp, use:

(ql:add-to-init-file)

To get updated software, use:

(ql:update-all-dists)

To update the Quicklisp client, use:

(ql:update-client)

To see what systems depend on a particular system, use:

(ql:who-depends-on system-name)
(完)


    

 

 

 

 


转载于:https://my.oschina.net/livend/blog/611792

猜你喜欢

转载自blog.csdn.net/weixin_34368949/article/details/91822559