問題タブ [ocamlbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
242 参照

ocaml - 警告 ocamlbuild/oasis の警告を防ぐには?

私は OCaml と Oasis を使用して、適切な入力を ocamlbuild に生成しています。

ここで非常に簡単な質問です。ソフトウェアをコンパイルするたびにocaml setup.ml -build、次の警告が表示されます。

これらを停止するにはどうすればよいですか?

編集

これらはすべて、oasis によって生成された myocamlbuild.ml で定義されていることがわかりました。おそらく、私が使用しているシェル zsh は、ocaml のソースが ocamlfind の場所やその他の変数などに関する情報を取得する方法とは異なります。したがって、警告。警告を修正する方法がわからないかどうかを確認します。

0 投票する
2 に答える
388 参照

ocaml - _oasis または OCamlbuild に注釈を生成するように指示するには?

問題は単純です。OCamlBuildまたは Oasis のマニュアルのどこにも、コンパイル時に注釈ファイル (.cmt) を自動的に生成するようにツールに指示する方法が見つかりません。

Emacs を使用しているときに、Merlin が式の型を伝えるときに注釈ファイルを使い果たすため、注釈ファイルは便利です。

0 投票する
1 に答える
197 参照

preprocessor - ocamlbuild と camlp5 でコンパイルする

通常の Makefile の使用を避けるために、私が取り組んでいるプロジェクトを ocamlbuild でコンパイルしようとしていますが、これは少し複雑です。

具体的には、最初にコンパイルする必要がある構文拡張ファイル (extend.ml) があります。通常の Makefile には次のルールがあります。

次に、依存関係を計算するために、次のようなルールがあります。

もちろん、オブジェクト ファイルの作成には、上記と同様のルールが必要です。


私の質問は、これらのルール/要件を1 つの ocamlbuild コマンドに統合するにはどうすればよいですか (可能な場合) ?

最初にextend.mlファイルをコンパイルしてから、次のコマンドを使用しようとしました:

しかし、私はそれが決して最適だとは思いません。

残念ながら、私は ocamlbuild をコンパイル ツールとして使用することに慣れていないので、助けていただければ幸いです。

0 投票する
1 に答える
34 参照

plugins - Ocamlbuild プラグイン: ターゲットが変更された場合にのみ動的な依存関係をビルドします

ocamlbuild プラグインを作成しようとしています。目標は、Qt アプリを構築することです (当面は OCaml コードなしで)。最終的なリンク フェーズを処理するために、obj、mocs、uis、および rcs のリストを .qtobjs ファイル (.itarget など) に書き込み、Qt ライブラリのリストを .qtpackages ファイルに書き込みました。これらのファイルに適用されるルールは、これらのリストを解析し、すべてをリンクする前にオブジェクト、モックなどを動的に構築します。

問題は、変更されていないターゲットを動的にビルドしたくないということです。以下のルールを参照してください。

必要がないときは「ビルド」と呼びたくありません。

注意: 関数

私の問題を解決できます。

0 投票する
1 に答える
108 参照

ocaml - Ocamlbuild は依存関係を _build にコピーします

ocamlbuild を使用して piqi を自動的に呼び出し、 protobuf定義から ocaml モジュールを生成しようとしています。%.protobufこれは、ファイルからに移動し%.proto.piqi、最後にに移動する必要がある 2 段階のプロセス%_piqi.mlです。

最初のステップのルールは次のようになります。

しかし、個々のファイルがソース内で相互にインポートされるため、%.proto.piqiターゲットは実際にはソース ディレクトリ内のすべての「*.proto」ファイルに依存しているため、これは機能しません。.protoしかし、この依存関係を ocamlbuild で表現する方法がわかりません。_build1 つだけではなく、すべての proto ファイルがコピーされていれば十分です。~dep

0 投票する
1 に答える
191 参照

ocaml - 2 つのカスタム OCaml モジュールを「corebuild」でリンクするにはどうすればよいですか

nhc.ml と test.ml という 2 つの OCaml モジュールがあります。これらのモジュールは両方とも、parser.mly、scanner.mll、ast.mli を参照します。

目標は、まだ test.ml の関数を参照できる nhc.native という 1 つの実行可能ファイルを用意することです。

2 つのモジュールを別々に分離すると、次のように機能します。

しかし、次のように corebuild を使用して 2 つをリンクしようとすると:

エラーが発生します:

最初にテスト実行可能ファイル (test.native) を mkaing せずに同じコマンドを実行すると、次のエラーが発生します。

指定された機能を取得するにはどうすればよいですか?

0 投票する
1 に答える
73 参照

ocaml - 実行可能ファイルを生成するだけでなく、自分のファイルを実行するように ocamlbuild に指示する方法はありますか?

今、使用するmlファイルを再コンパイルして実行したい場合

これを行うためのより短い方法はありますか?Haskell は言うだけで実行できますがrunghc myfile.hs、ocamlbuild や ocamlfind も同様の機能を提供するのではないでしょうか。

0 投票する
1 に答える
178 参照

ocaml - OCamlbuild で OCaml インターフェイスを無視する

.mli大きなライブラリがあり、すべてのモジュールをパックするが、ソース ディレクトリに存在するファイルを無視するターゲットを作成したいと考えています。これを簡単に達成できるocamlbuildプラグインまたは特別なセットを介して使用する簡単な方法はありますか?_tags

私が考えることができる1つの潜在的な解決策はOCaml、プラグインの新しいコンパイルルールであり、ビルドインルールよりも優先されるように設定します。

ありがとうございました。

0 投票する
1 に答える
678 参照

windows - 奇妙なエラーが発生し、Windows で OCaml プログラムをビルドできません

私は最近、OCaml を動作させようとしてきましたが、インタプリタは問題なく動作します。ネイティブの実行可能ファイルをビルドすることはできません。これが私のプログラムです:

実行するocaml program.mlと、期待される出力が得られますHello, World!。ただし、実行すると次のocamlbuild program.nativeようになります。

それでも、ディレクトリC:\Users\User\を見ると、それprogram.ml.dependsが存在することがわかります。もう一度実行すると、次のようになります。

だから存在するの!?!?!?! 内容はmy_prog.ml:. ちなみに、この_buildディレクトリには、_digests、_log、program.ml、および sanatize.sh というファイルが含まれています。以下は、-verbose 10 を指定してコマンドを実行したときの出力です。

そして、私がそれを強制した場合:

同じコマンドをもう一度実行します。

この時点で、program.native ファイルを取得しますが、機能せず、テキスト エディターで開くと、!<symlink>. 使用後は、存在しないreadlinkものを指します。_build/program.nativeこの時点で私は困惑しており、次にどこに行けばよいかわかりません。残念なことに、このプログラミング言語を機能させるのは非常に困難です。

OCamlをコンパイルするためだけにvmをデュアルブート/インストールする必要はありません。

最後に、OPAM のインストール方法を教えてください。