Как скомпилировать программу ocaml с использованием графического модуля от ocamlopt?

Насколько я понимаю, graphics.cma x не существует. Но как скомпилировать программу ocaml с использованием графического модуля от ocaml opt? Является ли это возможным? Может быть, какие-нибудь альтернативные графические библиотеки?


person Valentine Zakharenko    schedule 17.06.2016    source источник


Ответы (1)


Ну, graphics.cma x действительно не существует, почему он должен? Но graphics.cm x a делает. Так что, конечно, можно компилировать программы, использующие графическую библиотеку, в машинный код. Вы можете использовать ocamlfind, чтобы найти подходящую библиотеку в зависимости от вашего режима компиляции. Например на моей машине:

$ ocamlfind query -predicates native -a-format graphics
  /home/ivg/.opam/fresh/lib/ocaml/graphics.cmxa

В таком простом случае, как этот, с графической библиотекой, которая распространяется вместе с самой системой OCaml, вы можете просто добавить graphics.cmxa в строку компиляции. В более сложных случаях просто используйте ocamlfind ocamlopt вместо ocamlopt и укажите параметр -package для ссылки на имя библиотеки, в вашем случае это будет:

 $ ocamlfind ocamlopt -package graphics ...

Или вы можете использовать ocamlbuld:

 $ ocamlbuild -package graphics my_cool_application.native

где ваше крутое приложение имеет точку входа в my_cool_application.ml файле.

person ivg    schedule 17.06.2016
comment
Прошу прощения за действительно глупый вопрос, выделенный жирным шрифтом. Два дня непрерывной работы. - person Valentine Zakharenko; 17.06.2016