Я играю с OCaml. Первое, что я хочу знать, - это создать проект OCaml. Прямо сейчас, я просто хочу, чтобы что-то было глупо просто, так как я просто учился. Может ли кто-нибудь указать мне на систему сборки вместе с примером типа «привет мир» для использования этой системы сборки?Что такое глупо простой способ скомпилировать проект OCaml?
ответ
ocamlopt является стандартным компилятором на основе собственного кода. Типичный синтаксис сборки:
ocamlopt -o execname module1.ml module2.ml
Вы можете использовать ocamlc
для компиляции в байт-код вместо.
Обычно стандартная библиотека уже включена. Если вы на системе Nix * и хотите включить, скажем, библиотеку Unix, вы могли бы сделать что-то вроде
ocamlopt -o execname unix.cmxa module1.ml module2.ml
CMXA файлов нативного кода LIBS, CMA файлы байткод ЛИЭСА.
Для более сложных построений, the ocamlfind программа, которая помогает найти libaries. Вы также можете использовать GNU make и аналогичные инструменты. Больше информации можно найти here. This - это страница об использовании gmake.
This является окном «Coder's First Ocaml».
Here - это лекционная страница для класса Ocaml, которую я получил в колледже. Не пытайтесь нападать на профессора Гюнтера за любыми советами, хотя она была злым троллом, если память служит.
Возможно, вы ищете ide. Взгляните на Know of an OCAML IDE?.
http://www.ocaml-tutorial.org/compiling_ocaml_projects объясняет основы компиляции. В нижней части этой страницы есть раздел под названием Automated build systems
и ссылки на темы Compiling with GNU make
и Compiling with Omake
оба вместе с образцами.
На самом деле, я предпочитаю использовать emacs. И для примера «hello world» я больше думал о сценарии сборки типа «hello world», а не о «мире привет» для OCaml.:-) –
Ответ с большинством голосов на вопрос # 118935 - «Emacs в режиме Caml, или режим Tuareg», посмотрите :-) – VolkerK
У меня было намного больше удачи с omake, чем с ocamlbuild - это довольно просто для отображения зависимых пакетов в omakefile; Я не мог понять, как это сделать с ocamlbuild. Недавно я прочитал в списке рассылки ocaml, что ocamlbuild больше не поддерживается. – aneccodeal
Посмотрите на ocaml-make
от Markus Mottle. Проект включает OCamlMakefile
. Скопируйте это в каталог с исходными кодами и создать Makefile
, например .:
SOURCES = hello.ml
RESULT = hello
-include OCamlMakefile
Вы, наверное, знаете это, но только в том случае, если вы этого не сделаете, OCaml включают в REPL, который можно использовать для кодирования в интерактивном режиме без необходимости компиляции. Это может быть очень полезно, когда вы впервые учитесь.
Вы можете ввести, #use "
Существует также ocamlbuild. Для простого проекта без внешних зависимостей это так просто, как
ocamlbuild prog.native
Это очень простой способ, хотя документация отстой. Отладка программы с использованием компиляции toplevel также полезна, «ocamlbuild prog.top» – nlucaroni
Это помогает. Вы также можете найти его здесь. https://realworldocaml.org/v1/en/html/a-guided-tour.html – eccstartup
По моему опыту, это самый простой способ начать компиляцию многомодульных проектов Ocaml. –
Я также хотел бы добавить еще один Makefile
для OCaml, который я использую для моих проектов.
Makefile
и пример использования on the Ocaml website.
Предстоящий проект - OASIS, довольно элегантная система сборки, разработанная Сильваном Ле Галлом. Он использует его в кучу своих проектов OCaml, и я тоже.
У меня была справедливая доля злых профессоров троллей. Точка отметила. :-) –