2012-02-05 239 views
0

A screenshot of the problem斯旺克服務器啓動失敗

Emacs的泥無法連接到自吹,因爲很明顯斯旺克不能正確初始化。它說一些後端功能沒有實現。但是,我的沼澤後端是支持的SBCL。我正在使用Windows XP操作系統。 在以下鏈接中發現了類似的問題,但沒有解決方案。 Link to similar issue

我是否缺少Swank的配置文件?或者我使用的emacs和SBCL版本有兼容性問題?在那種情況下,我可以在哪裏獲得正確的Windows兼容性矩陣?

+0

似乎成爲最新swank版本的問題(請參閱https://github.com/quicklisp/quicklisp-slime-helper/issues/8)。改用早期版本。 – 2012-02-05 20:26:58

回答

0

這不完全是問題的答案,更多的是替代方案。

我認爲Swank期望的一些接口/方法定義需要由SBCL實現。我將lisp實現從SBCL轉移到CLisp,經過一些設置調整後,讓它工作。所以,我認爲斯旺克很好,但SBCL不是。

僅供參考,CLisp無法使用短窗口路徑,看起來像「Progra〜1」,而SBCL預計短路徑。 CLisp也給Windows中的臨時文件夾帶來了一些問題,爲此必須將一個變量添加到.emacs文件中,但之後快速設置。

各種Lisp實現的端口與Windows之間似乎有很多不同之處,如果有更好的文檔存在,這不會成爲問題。所有這些都必須從不同的博客和郵件列表中收集。

只要對原始問題有更好的回答,我會接受。

1

我主要使用Linux,但如果您安裝了多個版本的slime/swank代碼,則很容易發生衝突。

最好的方法是quicklisp使用,使SBCL/emacs的不能使用任何其他代碼(至少在你的第一次嘗試):

sbcl --no-userinit --no-sysinit --load ~/quicklisp/setup.lisp 

(asdf:initialize-source-registry '(:source-registry :ignore-inherited-configuration)) 
(ql:quickload "quicklisp-slime-helper") 
(swank:create-server :port 4545 :dont-close t :coding-system "utf-8-unix") 

然後啓動Emacs爲:

emacs -q -name SLIME -eval '(progn (load (expand-file-name "~/quicklisp/slime-helper.el")) (slime-connect "localhost" 4545))'