If anyone would like to chime in and say that OCaml build and packaging system is not that complicated, I would recommend first looking at
https://github.com/rizo/awesome-ocaml#package-management . IMHO we need to seriously look at consolidating efforts around OPAM for package management, packaging, building, testing and running. All the serious language-specific package managers do it, it's a proven strategy and it simplifies life for the developer.
This could be a typical workflow:
cd some-ocaml-proj
opam install # Switches compiler if necessary and installs and locally caches package dependencies
opam build
opam run # Automatically builds if necessary
opam test # Ditto
opam package # Ditto; --upload option can immediately upload to opam
opam doc # Builds documentation with ocamldoc or whatever
opam login -u user -p password
Regards,
Yawar