2011-12-09 8 views

答えて

17

短い答え:ちょうどquicklispを使用してください。

長い答え:理解したい場合は、パッケージ、つまりより正確にはASDFシステムがどのようにレイアウトされているか、それは良い考えです。実際、それについては何も難しいことはありません。

すべてのASDFシステムには、.asd拡張子のシステム定義ファイルが必要です。このファイルは、システムの他のファイルに、.asdファイルに関連するパス、そのタイプ(デフォルトではlispソースコード)、および依存関係を指定します。あなたのLispは、システム定義ファイルをどこに見つけるべきかを知っていなければなりません。 ASDFにはLispに知らせる2つの方法があります:ファイルまたはシンボリックリンクを格納するディレクトリをasdf:*central-registry*リストに追加するか、特別な設定ファイルを設定することです(ソースレジストリ - それ以上はASDF manual)。あなたが手でシステムをインストールする場合は

今、ちょうどそのソースをダウンロードし、(のような/home/user/lib/lisp/に - あなたはcl-ppcre.asdがありますその内側に、/home/user/lib/lisp/cl-ppcre-2.3.1/を得ることができます)いくつかのディレクトリにそれらを抽出します。あなたのLispがそれについてただ見つけさせるためには、ちょうど(push "/home/user/lib/lisp/cl-ppcre-2.3.1/" asdf:*central-registry*)(そして、後ろのスラッシュを忘れないでください - それは必須です)、そしてあなたは(asdf:oos 'asdf:load-op :cl-ppcre)でシステムをロードすることができます。

あなたは可能性もセットアップあなたが/home/user/.lisp/のように、既存のシステムシンボリックリンクと(例えば.sbclrcで)Lispのスタートアップの種類で*central-registry*に追加しましょう特別なディレクトリを、。今度はこのディレクトリにリンクされているシステムの一部を一時的にオーバーライドしたい場合は、新しいバージョンでリンクを解除する必要はありません。代替システムへのパスを*central-registry*にプッシュしてください。

Quicklispはあなたのためにすべてのことを行います...

関連する問題