0

binディレクトリにomakeビルドのものを入れようとしています。私は試した

LIB = ../bin/mylib
.DEFAULT: $(OCamlLibrary $(LIB), $(FILES))

しかし、.a と .cmxa だけが最終的に bin になり、すべての .cmx .cmi と .o が src になります。私は何を間違っていますか?

4

1 に答える 1

1

何も間違ってない。OMake に組み込まれている OCaml 関連のルールは、各モジュールをコンパイルし、ソース コードの同じディレクトリにそのオブジェクト (.cmo、.cmi、.cmx、および .o) を生成します。

$(OCamlLibrary $(LIB), $(FILES))関数はこれらのモジュール オブジェクトをリンクし、ライブラリ ファイル$(LIB).cma$(LIB).cmxaおよびを生成します$(LIB).a

オブジェクト ファイルの保存先ディレクトリを変更する場合は、OCaml のビルド ルールを修正する必要があります。それらはOCaml.omOMake のライブラリ ディレクトリの found で定義されていますが、これは非常に難しいと言わざるを得ません。

于 2016-02-03T20:07:49.063 に答える