Go to the first, previous, next, last section, table of contents.

ライブラリのコンパイル

Emacs Lispのコードはバイトコードにコンパイルすることができます.コンパ イルするとロードが速くなり,ロードしたときに占める領域も少なくなり,また 実行も速くなります.

Emacs Lispのソースファイルからバイトコンパイルしたファイルを作るには, M-x byte-compile-fileと入力します.この関数のデフォルト引数は,現 在のバッファに読み込んでいるファイルです.指定されたファイルを読み込んで バイトコードにコンパイルし,入力ファイル名に`c'を加えた名前のファイ ルに出力します.`rmail.el'ファイルは,`rmail.elc'にコンパイル されます.

1つのディレクトリで変更されたLispファイルを再びコンパイルするには, M-x byte-recompile-directoryを使います.引数としてディレクトリ名を 与えます.すでにバイトコンパイルされた各`.el'ファイルは,以前にコン パイルしたあとで変更されているなら,再びバイトコンパイルされます.このコ マンドに数引数を与えると,まだコンパイルされていない`.el'のファイル をコンパイルします.ファイルごとにynを答えます.

関数batch-byte-compileを使ってシェルから非対話的にEmacsを呼び出 してバイトコンパイルが行なえます.コンパイルするファイルはコマンド行の引 数で指定します.次のようなシェルコマンドを使います.

emacs -batch -f batch-byte-compile files...

引数にディレクトリ名を与えることもできます.このときは実際には byte-recompile-directoryがそのディレクトリについて呼び出されます. batch-byte-compileは,コマンド行の残りすべての引数をファイルかディ レクトリ名として使い,それからEmacsプロセスを終了します.

M-x disassembleによってバイトコンパイルの結果が見られます.引数 として関数名を与えます.これはバイトコンパイルされたコードをヘルプウィン ドウに1行に1命令ずつシンボルの形式で表示します.命令が変数や定数を参照し ていたらそれも表示します.


Go to the first, previous, next, last section, table of contents.