OCaml не может загрузить "extLib.cma" с верхнего уровня

Когда я пытаюсь загрузить файл extLib.cma в utop, Верхний уровень OCaml, я получаю следующую ошибку:

Cannot find file extLib.cma

Однако, если я пытаюсь установить его с помощью opam, я получаю следующее замечание:

Package extlib is already installed.

Что я делаю неправильно?

1 ответ

Решение

Если ваша цель заключается в интерактивном использовании некоторых функций extLib, то

$ utop

μ> #require "extlib";;
μ> ExtString.String.explode "ExtLib";;
- : char list = [E; x; t; L; i; b]

Если это что-то еще, то вам может потребоваться указать точный путь к extLib.cmaи что-то похожее на следующее должно работать:

$ utop

μ> #load "/Users/xxx/.opam/4.02.3/lib/extlib/extLib.cma";;

где /Users/xxx ваш домашний каталог / папка; 4.02.3 моя текущая версия компилятора, установленная через opam switch (IIRC, это system по умолчанию).

Другие вопросы по тегам