珍しいケースかもしれませんが、Clozure CL を実行しているリモート コンピューターに接続して、ローカル デスクトップにあるいくつかのファイルをコンパイルするのが好きです。
これで、リモートの Lisp ボックスに接続できるようになりました。私はEmacsを使ってそれをやった。したがって、.emacs ファイルにいくつかの行を追加しました。
(load (expand-file-name "~/quicklisp/slime-helper.el"))
(require 'slime)
(require 'tramp)
(setq tramp-default-method "ssh")
うまくいっているようです。私のsshトンネルをセットアップした後
ssh -L4005:127.0.0.1:4005 pi@192.168.0.100
ローカルの emacs 内で Clozure CL から通常の REPL を取得します。
また、ネットワーク内の任意の PC から Emacs の ssh 経由でファイルをロードすることもできます。しかし、最近(Emacsで)ロードされたファイルでバッファをコンパイルしようとすると、常に次のエラーが発生します。
File "/ssh:ingmar@192.168.0.103:/home/ingmar/Dokumente/Lisp/util.lisp" does not exist.
[Condition of type CCL::SIMPLE-FILE-ERROR]
Restarts:
0: [RETRY-LOAD] Retry loading "/ssh:ingmar@192.168.0.103:/home/ingmar/Dokumente/Lisp/util.lisp"
1: [SKIP-LOAD] Skip loading "/ssh:ingmar@192.168.0.103:/home/ingmar/Dokumente/Lisp/util.lisp"
2: [LOAD-OTHER] Load other file instead of "/ssh:ingmar@192.168.0.103:/home/ingmar/Dokumente/Lisp/util.lisp"
3: [RETRY] Retry SLIME REPL evaluation request.
4: [*ABORT] Return to SLIME's top level.
5: [ABORT-BREAK] Reset this thread
--more--
Backtrace:
0: (NIL #<Unknown Arguments>)
1: (CCL::%LOAD "/ssh:ingmar@192.168.0.103:/home/ingmar/Dokumente/Lisp/util.lisp" NIL NIL :ERROR :DEFAULT NIL)
2: (NIL #<Unknown Arguments>)
リモート Lisp ボックスにファイルの場所を伝えるにはどうすればよいですか? のように REPL に load ステートメントを挿入しようとしましたload ssh://...
が、結果は同じです。
リモートのLispボックスでローカルファイルをコンパイルできるようにするために、何をすべきか提案がある人はいますか? Lispはかなり長い間リモートで操作できるため、これはそれほど新しいことではないと思います...