2017-02-05 4 views
0

Мне нужно использовать Sexplib в моей программе. Я пробовалОшибка компиляции с sexplib

ocamlc sexplib.cma prog.ml 
Error: Unbound module Sexplib 

и я получил ошибку. Но я могу использовать Sexplib в верхнем уровне, если я загружаю ppx_sexp_conv пакет первый:

#require "ppx_sexp_conv";; 
open Sexplib;; 

Так я и попытался это:

ocamlfind ocamlc -package ppx_sexp_conv sexplib.cma prog.ml 
Error: Error while linking /Users/neko/.opam/system/lib/sexplib/sexplib.cma(Sexplib): 
The external function `caml_ba_get_1' is not available 

Я понятия не имею, что это значит и что мне нужно сделать сейчас. .. Может ли кто-нибудь помочь?

ответ

0

caml_ba_get_1 является функцией модуля Bigarray. Вы можете попробовать установить ссылку в пакете bigarray (или bigarray.cma). В моей системе функция определена в libbigarray.a.

0

Компонент отсутствует C внешние используемые вами пакеты. Вы должны это исправить, пройдя -linkpkg до ocamlfind, чтобы он передал соответствующие аргументы компоновщику:

ocamlc -package ppx_sexp_conv -linkpkg prog.ml