ocaml llvm opam

llvm enlaces OCaml



opam (1)

(como me piden que responda a mi propia pregunta ...)

Para utilizar el sistema de nivel superior.

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

A continuación, inicie llvmtop , puede usar enlaces llvm después de open Llvm .

Todavía no he encontrado un equivalente para utop ...

Usar utop

Gracias a la documentación de utop here

  1. crear un archivo myutop_main.ml :

    let () = UTop_main.main ()

  2. crear un utop personalizado con enlaces llvm:

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

Estoy trabajando en enlaces OCvl llvm.

Instalé el paquete llvm a través de opam ( opam install llvm ), cuando uso llvm in utop, obtengo el siguiente error:

#require "llvm";; Error: The external function ''llvm_global_succ'' is not available.

La versión de opam llvm es 3.2.

También intenté compilar llvm3.3 desde el sitio oficial ( ./configure --with-ocaml-libdir=''ocamlc -where'' ), la compilación tuvo éxito (todas las herramientas de la línea de comandos de llvm están funcionando), pero obtuve el mismo error en utop.

Estoy en Mac OS 10.7.5.

Edit: lo resolví ..

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

A continuación, inicie llvmtop , puede usar enlaces llvm después de open Llvm .

Todavía no he encontrado un equivalente para utop ...

Edit2: ¡Ahora utop está funcionando!

Gracias a la documentación de utop here

  1. crear un archivo myutop_main.ml :

    let () = UTop_main.main ()

  2. crear un utop personalizado con enlaces llvm:

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