Я пытаюсь построить примеры на https://github.com/mirage/mirage-tcpip в папке "examples".
Сначала я сделал opam install .
в каталоге root, чтобы установить все зависимости , Затем я сделал dune build
, и он все встроил в _build
, множество .a, .cma, .cmx, .cmi, .cmxa
файлов, которые я не знаю, для чего ( может кто-нибудь объяснить ?).
В любом случае Я думаю, что примеры должны быть построены отдельно, потому что они имеют свои собственные файлы дюн. Но я попытался запустить dune build
на них и получил:
root@66f08fd7c55b:/workspaces/ocaml_env/mirage-tcpip/examples/ping# dune build
Entering directory '/workspaces/ocaml_env/mirage-tcpip'
root@66f08fd7c55b:/workspaces/ocaml_env/mirage-tcpip/examples/ping# ls
dune ping.ml
root@66f08fd7c55b:/workspaces/ocaml_env/mirage-tcpip/examples/ping# cat dune
(executables
(names ping)
(libraries cmdliner logs logs.fmt tcpip.icmpv4-socket))
root@66f08fd7c55b:/workspaces/ocaml_env/mirage-tcpip/examples/ping# dune build ping
Entering directory '/workspaces/ocaml_env/mirage-tcpip'
Error: Don't know how to build ping