序文: OCaml、OPAM、OASIS は初めてです。
opam
tldr question:リポジトリでまだ利用できないパッケージを適切にセットアップするにはどうすればよいですopam install X
か (単に行うことはできません)。詳細は次のとおりです。
OCaml プロジェクトにocaml-glpkを含めようとしています。実行するだけで ocaml-glpk をインストールし、READMEmake
にmake install
記載されているように、指定された例は正しくコンパイルおよび実行されます。しかし、OASIS を使用してプロジェクトのビルド システムを生成していますが、そのセットアップ方法がわかりません。私のファイルには同じ例(フォルダに名前が変更さglpkExample.ml
れていsrc
ます)と次のものがあり_oasis
ます:
Executable "glpkExample"
Path: src
MainIs: glpkExample.ml
CompiledObject: best
BuildDepends:
glpk
を実行した後oasis setup -setup-update dynamic
、実行するmake
と次のエラーが発生します。
ocaml setup.ml -build
Finished, 0 targets (0 cached) in 00:00:00.
+ /home/dimitrios/.opam/system/bin/ocamlfind ocamlopt -g -linkpkg -package glpk src/glpkExample.cmx -o src/glpkExample.native
File "_none_", line 1:
Error: Cannot find file /home/dimitrios/.opam/system/lib/glpk/glpk.cmxa
Command exited with code 2.
Compilation unsuccessful after building 4 targets (3 cached) in 00:00:00.
E: Failure("Command ''/usr/bin/ocamlbuild' src/glpkExample.native -tag debug' terminated with error code 10")
make: *** [build] Error 1
glpk ライブラリには、ネイティブ実行可能ファイルをコンパイルするために必要な cmxa ファイルが欠落しているようです。これを修正する方法がわかりません。正しくコンパイルするためglpkExample.ml
に、私の Makefile には/home/dimitrios/.opam/system/lib/glpk
、OCamlMakefile
非常に長く複雑な . これを OASIS で設定する方法、または ocaml-glpk を OASIS でうまく動作させる方法についてのヘルプをいただければ幸いです。
ありがとう!