Earlier quoted context omitted.
Make works fine with OCaml. There's a handful of rules you copy and paste around which is not ideal, but that's much easier to deal with than dune.
Can you link a Makefile for an OCaml project, which ensures reproducibility and locality? What I mean is checking checksums of dependencies upon when they are installed, and acting only in the project directory, not changing the surrounding system in order to run the program. Asking, because I tried and failed.
OCaml Onboarding: Introduction to the Dune build system
31–38 of 38 posts
Re: OCaml Onboarding: Introduction to the Dune build system
#32Maybe this introduction will finally do the trick.
Re: OCaml Onboarding: Introduction to the Dune build system
#33what is wrong with make why does every language need to re invent packaging, building, etc. I think these people have no useful software to write so they rewrite the development stack.
Re: OCaml Onboarding: Introduction to the Dune build system
#34Earlier quoted context omitted.
Because Make sucks? Because it's really limited and not expressive? Because it's not really a build system (nor is it a package manager or a dependency resolver or...)
> Because it's really limited and not expressive? It's neither of those unless you limit yourself to a lowest-common-denominator feature set. GNU Make, for example, is a Turing-complete, dynamic programming language and a CLI task runner. You can build a build system in GNU Make ( https://github.com/omercsp/simple-build-system ) just like you can do so in any other language. Make suffers from unfamiliar and somewhat…
Re: OCaml Onboarding: Introduction to the Dune build system
#35Does anyone know what's up with ocaml on windows? I haven't used it in a while. Trying to install utop on 5.x compiler and quite a few packages need a downgrade to 4.x? I've tried with both mingw and system-msvc. Same behavior.
Installing via opam and using the cygwin method is supported and should be working fine (cygwin is just used for build - binaries still just link with mingw). That specific combination (ocaml + mingw) has a known problem with ocamlfind that's still awaiting a new release (see https://github.com/ocaml/ocamlfind/pull/112 ). ocamlfind underpins quite a bit of the package ecosystem, so this one is annoying, as the mingw…
Re: OCaml Onboarding: Introduction to the Dune build system
#36what is wrong with make why does every language need to re invent packaging, building, etc. I think these people have no useful software to write so they rewrite the development stack.
Re: OCaml Onboarding: Introduction to the Dune build system
#37what is wrong with make why does every language need to re invent packaging, building, etc. I think these people have no useful software to write so they rewrite the development stack.
Re: OCaml Onboarding: Introduction to the Dune build system
#38Earlier quoted context omitted.
Can you link a Makefile for an OCaml project, which ensures reproducibility and locality? What I mean is checking checksums of dependencies upon when they are installed, and acting only in the project directory, not changing the surrounding system in order to run the program. Asking, because I tried and failed.
ocamldep will set up the dependencies correctly. For examples, have a look at the multiple Makefile.am files in libguestfs, guestfs-tools & virt-v2v projects. All run as non-root so they don't change anything about "the system" assuming that's what you meant. (On mobile at the moment so can't link easily.)
I don't see how ocamldep is used in there. It seems to use multiple different programming languages somehow. I don't find it easy to understand what it does. It seems to be building a website as well.