11. ネイティブコードコンパイル(ocamlopt

11.1. Overview of the compiler
11.2. Options
11.3. Common errors
11.4. Running executables produced by ocamlopt
11.5. Compatibility with the bytecode compiler

この章では Objective Caml の高パフォーマンスネイティブコンパイラ ocamlopt の解説をします。ocamlopt は Caml のソースファイルをネイティブコードのオブジェクトファイルにコンパイルしたり、そのオブジェクトファイルをリンクして実行可能なファイルを作成したりできます。

ネイティブコードコンパイラは特定のプラットフォームでしか使用できません。ネイティブコードは ocamlc で生成したバイトコードより実行速度が速い代わりに、コンパイルに時間がかかり実行ファイルのサイズが大きくなります。バイトコードコンパイラとの互換性が非常に高く、同一のソースコードを ocamlc と ocamlopt でコンパイルすると同じように動作するはずです。

ocamlc で生成したネイティブコードオブジェクトファイルと ocamlopt で生成したバイトコードオブジェクトファイルを一緒にすることはできません。プログラムはすべて ocamlopt でコンパイルするか、すべて ocamlc でコンパイルするかのどちらかにしてください。ocamlopt で生成したネイティブコードオブジェクトファイルを、対話式システム ocaml でロードすることはできません。