Какой глупо простой способ скомпилировать проект OCaml?
Я играю с OCaml. Первое, что я хочу знать, это сделать проект OCaml. Прямо сейчас я просто хочу что-то глупо простое, так как я только учусь. Может ли кто-нибудь указать мне на систему сборки вместе с примером типа "hello world" для использования этой системы сборки?
7 ответов
ocamlopt - это стандартный компилятор с собственным кодом. Типичный синтаксис сборки:
ocamlopt -o execname module1.ml module2.ml
Ты можешь использовать ocamlc
вместо этого скомпилировать в байт-код.
Обычно стандартная библиотека уже включена. Если вы работаете в системе *nix и хотите включить, скажем, библиотеку Unix, вы должны сделать что-то вроде
ocamlopt -o execname unix.cmxa module1.ml module2.ml
Файлы cmxa являются библиотеками с собственным кодом, файлы cma - библиотеками с байт-кодом.
Для более сложных сборок существует программа ocamlfind, которая помогает найти библиотеки. Вы также можете использовать GNU make и аналогичные инструменты. Более подробную информацию можно найти здесь. Это страница об использовании gmake.
Это нормальная страница "Первый кодер кодера".
Вот страница лекций для класса Ocaml, который я взял в колледже. Не пытайтесь избить профессора Гюнтера за любые советы, хотя, если память не изменяет, она была злым троллем.
Также есть ocamlbuild. Для простого проекта без внешних зависимостей это так же просто, как
ocamlbuild prog.native
Посмотри на ocaml-make
Маркус Моттл Проект включает в себя OCamlMakefile
, Скопируйте это в исходный каталог и создайте Makefile
Например:
SOURCES = hello.ml
RESULT = hello
-include OCamlMakefile
Вы, вероятно, ищете иде. Взгляните на Знайте о OCAML IDE?,
http://www.ocaml-tutorial.org/compiling_ocaml_projects объясняет основы компиляции. Внизу этой страницы есть раздел под названием Automated build systems
и ссылки на темы Compiling with GNU make
а также Compiling with Omake
оба, включая образцы.
Вы, вероятно, знаете это, но на всякий случай, в OCaml есть REPL, который вы можете использовать для интерактивного кодирования без необходимости компиляции. Это может быть очень полезно, когда вы впервые учитесь.
Перспективным проектом является OASIS, довольно изящная система сборки, разрабатываемая Sylvain Le Gall. Он использует это в куче своих проектов OCaml, я тоже
Я бы также добавил еще один Makefile
для Ocaml, который я использую для своих проектов.
Makefile
и пример использования доступны на веб-сайте Ocaml.