So I just tried¹, and the failure is as follows: $ ocamlbuild -tag use_ocamldoc test.cmxs + /home/gasche/.opam/4.02.3/bin/ocamlopt.opt -shared -I +ocamldoc ocamldoc.cmxa test.cmx -o test.cmxs File "_none_", line 1: Error: Cannot find file ocamldoc.cmxa It looks like the tag use_ocamldoc expects a file ocamldoc.cmxa to exist, providing library support for ocamldoc plugins, and it does not seem to exist -- it seems that the preferred way to use ocamldoc plugins is to use "ocamldoc.opt -g foo.cmxs", with ocamldoc libraries already linked inside ocamldoc.opt. So just using ocamlbuild -cflags -I,+ocamldoc test.cmxs works and seems to do what you expect. It goes without saying that this is not a perfect long-term solution, as it assumes that ocamldoc libraries are distributed with the stdlib. It would be cleaner to have an ocamldoc package for them (just like ocamlbuild has a dummy ocamlfind package indicating the location of its library files), but it seems that this is not currently the case. It would be nice (but not super-high priority) to have such a dummy package in ocamlfind in the future, so that you can just do ocamlbuild -use-ocamlfind -package ocamldoc test.cmxs ¹: The most time-consuming part was finding the code of a ocamldoc plugin to compile, as the documentation examples are incomplete. Next time, feel free to provide a tarball with a minimal example to reproduce. On Fri, Dec 18, 2015 at 5:14 PM, Armaël Guéneau wrote: > Hi list, > > I'm wondering how one should compile ocamldoc custom generators > using > ocamlbuild. > > First, the ocamlbuild manual > ( > > https://github.com/gasche/manual-ocamlbuild/blob/master/manual.md#basic-tags > -) > says that the [use_ocamldoc] tag is deprecated; and that a corresponding > ocamlfind package should be used instead. Is there such a package for > ocamldoc? > I did not found one. > > Then, I did not manage to build the plugin into .cma/.cmxs files directly > using > ocamlbuild. My command line was something along these lines: > > ocamlbuild -use-ocamlfind -tag use_ocamldoc -package compiler-libs > plugin.cmxs > > When trying to build plugin.cma/plugin.cmxs, ocamlbuild complained that > "Cannot > find file ocamldoc.cma/ocamldoc.cmxa" (respectively). However, I can build > plugin.cmo/plugin.cmx using the same command line, then create the > .cma/.cmxs > manually using ocamlc/ocamlopt - which I ended up doing. > > Is there a better way to do so? If the whole process can be improved > (how?), I > would be happy to write the required patches/documentation. > > — Armaël > >