llvm OCaml绑定

xys*_*sun 29 ocaml llvm opam

我正在研究llvm OCaml绑定.

我通过opam(opam install llvm)安装了llvm包,当我在utop中使用llvm时,我收到以下错误:

#require "llvm";;
Error: The external function 'llvm_global_succ' is not available. 
Run Code Online (Sandbox Code Playgroud)

opam llvm版本是3.2.

我也尝试从官方网站(./configure --with-ocaml-libdir='ocamlc -where')构建llvm3.3 ,构建成功(所有llvm命令行工具都正常工作),但我在utop中遇到了同样的错误.

我在Mac OS 10.7.5上.


编辑:我解决了..

ocamlmktop -o llvmtop llvm.cma -cc g++

然后启动llvmtop,之后可以使用llvm绑定open Llvm.

我还没有找到相应的utop...


Edit2:现在utop正在工作!

感谢此处utop文档

  1. 创建一个myutop_main.ml文件:

    let () = UTop_main.main ()

  2. utop使用llvm绑定创建自定义:

    ocamlfind ocamlmktop -o llvmutop -thread -linkpkg -package utop -package llvm myutop_main.ml -cc g++

xys*_*sun 3

(因为我被要求回答我自己的问题......)

使用系统顶层

ocamlmktop -o llvmtop llvm.cma -cc g++

然后启动llvmtop,之后就可以使用llvm绑定了open Llvm

我还没有找到同等的utop..


使用utop

感谢这里的utop文档

  1. 创建一个myutop_main.ml文件:

    let () = UTop_main.main ()

  2. utop使用 llvm 绑定创建自定义:

    ocamlfind ocamlmktop -o llvmutop -thread -linkpkg -package utop -package llvm myutop_main.ml -cc g++