そこには多く の リソース が あります。
main.native最初に、 as にタグを付けて c-stub への依存関係を作成し、それに応じてリンクする必要があります。(ちなみに、これは c-library が と呼ばれていることを前提としていcstubますが、好きなようにすることができます)。
_tags:
<*.{byte,native}> : use_cstub
<**/*.cm{x,}a> : use_cstub
次に、myocamlbuild.mlタグ付けされたものへの c-library の依存関係を作成します。
dep ["link";"ocaml";"use_cstub"] ["libcstub.a"]
OCamlbuild にはライブラリ ファイル(*.so および *.a) を作成するためのルールがありますが、ビルド対象のファイルのリストをファイルに追加する必要があり.clibます。
cstub.clib:
cobjfile1.o
cobjfile2.o
...
すべてのヘッダー ファイルも、メイン ディレクトリからディレクトリにコピーする必要があります_build/。これは、それらが c でのコンパイルに依存していることを指定することによって行われます ( はmyocamlbuild.ml、headersプロジェクト内のヘッダー ファイルの名前を示す文字列のリストです。
dep ["c"; "compile"] headers;
最後に、プロジェクトを c-stub ライブラリにリンクするときにフラグを追加します (これも にありますmyocamlbuild.ml)。
flag ["link";"ocaml";"use_cstub"] (S[A"-dllib";A"-lcstub";A"-cclib";A"-lcstub"]);