私のMacに切り替えても、この問題はなくなりましたが、同様の問題があります。このチュートリアルから https://github.com/llvm-mirror/llvm/tree/master/examples/OCaml-Kaleidoscope/Chapter7ocaml llvm万華鏡チュートリアル "Unbound module LlvmExecutionEngine"
http://llvm.org/docs/tutorial/OCamlLangImpl7.html
(私はこれらの2つが同じ人である99%確信している)
後:私は仕事にこれを取得しようとしているOCaml llvm "Unbound module ExecutionEngine"
いくつかの問題を回避する私は最後の数時間のつまずきに達しました
[email protected]:~/Desktop/llvm-master/examples/OCaml-Kaleidoscope/Chapter7$ ocamlbuild -use-ocamlfind toy.byte -package llvm llvm_executionengine
Finished, 0 targets (0 cached) in 00:00:00.
File "_tags", line 4, characters 41-53:
Warning: the tag "use_bindings" is not used in any flag declaration, so it will have no effect; it may be a typo. Otherwise use `mark_tag_used` in your myocamlbuild.ml to disable this warning.
+ ocamlfind ocamlc -c -package llvm -o toplevel.cmo toplevel.ml
File "toplevel.ml", line 6, characters 5-24:
Error: Unbound module LlvmExecutionEngine
Command exited with code 2.
Compilation unsuccessful after building 13 targets (12 cached) in 00:00:00.
私は確かにllvm_executionengineが正しいパッケージであるかのように、私はそれがどんなパッケージであるかを知らない何かを試してみるかのようです。すべてのヘルプはスーパーだろう
(*===----------------------------------------------------------------------===
* Top-Level parsing and JIT Driver
*===----------------------------------------------------------------------===*)
open Llvm
open Llvm_executionengine
(* top ::= definition | external | expression | ';' *)
let rec main_loop the_fpm the_execution_engine stream =
match Stream.peek stream with
| None ->()
:ここ
はエラーラインとコードの先頭数行ですさ!
私はtobiasBoraの答えの最初の部分を試してみましたが、この結果を得た:(私はあなたの例から「llvm_executionengine」を削除したことに注意してください)
$ ocamlbuild -use-ocamlfind test.byte -package llvm
Finished, 0 targets (0 cached) in 00:00:00.
File "_tags", line 4, characters 41-53:
Warning: the tag "use_bindings" is not used in any flag declaration, so it will have no effect; it may be a typo. Otherwise use `mark_tag_used` in your myocamlbuild.ml to disable this warning.
Solver failed:
Ocamlbuild cannot find or build test.ml. A file with such a name would usually be a source file. I suspect you have given a wrong target name to Ocamlbuild.
Compilation unsuccessful after building 0 targets (0 cached) in 00:00:00.
エラーメッセージは、「未結合のモジュールLlvmExecutionEngine」と言うが、あなたのオープンLLvm_executionengine:あなたはまだ問題がある場合、それはいくつかの問題を解決することがあり、3.5バージョンをインストールしてみてください。そのうちの1つが間違っているはずです。 – camlspotter
@camlspotter私はこれが単なる奇妙な名前の問題だと思った。あなたはエラーがオープンコールと一致しないと指摘した場合、私は非常に混乱しているので、私には他のアドバイスはありませんか? – Bren
@Brenあなたは正しいファイルを見ていますか?たぶんあなたはtoplevel.mlを一つのディレクトリで見ているかもしれませんが、ocamlfindはtoplevel.mlを 'open LlvmExecutionengine'という別のディレクトリにコンパイルしています。 – sepp2k