使用模块 Llvm_analysis 编译 ocaml

Compiling ocaml with module Llvm_analysis

我正在学习 LLVM 教程的第 3 章, 给定的文件 myocamlbuild.ml 是:

open Ocamlbuild_plugin;;

ocaml_lib ~extern:true "llvm";;
ocaml_lib ~extern:true "llvm_analysis";;

flag ["link"; "ocaml"; "g++"] (S[A"-cc"; A"g++"]);;

但我发现如果我 运行

ocamlbuild -pkg llvm repl.byte

错误信息是:所需的模块llvm_analysis不可用。 我在这里做错了什么?谢谢

您遵循了一些过时且可能错误的说明。如果您将从 opam 安装 llvm,它将被正确打包,并且为了使用 llvm_analysis 库,您只需要使用 ocamlbuild 工具的 -pkg llvm.analysis 选项。

因此,删除 myocamlbuild.ml 文件和您创建的任何其他支持文件(例如,_tags),然后按如下方式编译它

 ocamlbuild -pkgs llvm,llvm.analysis repl.byte

 ocamlbuild -pkgs llvm,llvm.analysis repl.native

在逗号后添加其他 llvm 子包(无空格)。

要获取所有 llvm 子包的列表,请使用以下命令:

 ocamlfind list | grep llvm

另请参阅我对您之前问题的 ,了解有关如何设置使用 llvm

的新项目的详细说明