1

ここに投稿しました(ocaml llvm kaleidoscope tutorial "Unbound module LlvmExecutionEngine")が、切り替えたMacにはその問題がないようです。

これを機能させようとしています: https://github.com/llvm-mirror/llvm/tree/master/examples/OCaml-Kaleidoscope/Chapter7

このチュートリアルから http://llvm.org/docs/tutorial/OCamlLangImpl7.html

(この2つは同一人物によるものであると99%確信しています)

いくつかの問題を回避した後、最後の数時間のつまずきに達しました

dyn-160-39-160-188:Chapter7 me$ ocamlbuild -use-ocamlfind toy.byte -package llvm llvm_executionengine
Finished, 0 targets (0 cached) in 00:00:00.
+ ocamlfind ocamlc -c -package llvm -o toplevel.cmo toplevel.ml
File "toplevel.ml", line 37, characters 25-53:
Error: Unbound module ExecutionEngine
Command exited with code 2.
Compilation unsuccessful after building 13 targets (12 cached) in 00:00:00.

llvm_executionengine が適切なパッケージであると確信しています。他の何かを試してみると、それがどのパッケージであるかがわからないと言われます。

エラーのあるコード行は次のとおりです。

    (* JIT the function, returning a function pointer. *)
    let result = ExecutionEngine.run_function the_function [||] (*this line*)
      the_execution_engine in

    print_string "Evaluated to ";
    print_float (GenericValue.as_float Codegen.double_type result); 

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

1

ocamlfind の CLI はそのようには機能しません。-package llvm -package llvm.execution動作するはずです。

于 2016-05-05T21:52:58.010 に答える