Подтвердить что ты не робот

Llvm привязки OCaml

Я работаю над привязками llvm OCaml.

Я установил пакет llvm через opam (opam install llvm), когда я использую llvm в utop, я получаю следующую ошибку:

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

Версия opam llvm равна 3.2.

Я также попытался создать llvm3.3 с официального сайта (./configure --with-ocaml-libdir='ocamlc -where'), сборка была успешной (все инструменты командной строки llvm работают), но я получил ту же ошибку в utop.

Я на Mac OS 10.7.5.


Изменить: я решил...

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

Затем запустите llvmtop, вы можете использовать привязки llvm после open Llvm.

Я еще не нашел эквивалент для utop.


Edit2: теперь работает utop!

Благодаря utop документации здесь

  • создать файл myutop_main.ml:

    let () = UTop_main.main ()

  • создать пользовательский utop с привязками llvm:

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

4b9b3361

Ответ 1

(поскольку меня попросят ответить на мой собственный вопрос...)

Использование системного уровня

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

Затем запустите llvmtop, вы можете использовать привязки llvm после open Llvm.

Я еще не нашел эквивалент для utop.


Использовать utop

Благодаря документации utop здесь

  • создать файл myutop_main.ml:

    let () = UTop_main.main ()

  • создать пользовательский utop с привязками llvm:

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