title: ocamlopt and ocamlbuild give an Unbound module error despite ocamlfind seeing the required module
body: <p>I'm attempting to build the xencat tool from <a href="https://github.com/mirage/ocaml-vchan/tree/master/cli" rel="nofollow">this project</a>. When I try to use <code>ocamlopt</code> to build it, I get</p>
  
  <pre><code>$ ocamlopt -o xencat xencat.ml 
  File "xencat.ml", line 1, characters 5-13:
  Error: Unbound module Cmdliner
  </code></pre>
  
  <p>Following guidance <a href="https://ocaml.org/learn/tutorials/compiling_ocaml_projects.html" rel="nofollow">here</a>, I verified that cmdliner was installed and that it was visible to <code>ocamlfind</code>, and then tried again:</p>
  
  <p>Here's what <code>ocamlfind list</code> shows:</p>
  
  <pre><code>$ ocamlfind list
  bigarray            (version: [distributed with Ocaml])
  bytes               (version: [distributed with OCaml 4.02 or above])
  ...
  cmdliner            (version: 0.9.8)
  ...
  </code></pre>
  
  <p>No luck:</p>
  
  <pre><code>$ ocamlfind ocamlopt -o xencat xencat.ml
  File "xencat.ml", line 1, characters 5-13:
  Error: Unbound module Cmdliner
  </code></pre>
  
  <p>Following this page, I tried ocamlbuild:</p>
  
  <pre><code>$ocamlbuild -use-ocamlfind xencat.byte
  + ocamlfind ocamlc -c -o xencat.cmo xencat.ml
  File "xencat.ml", line 1, characters 5-13:
  Error: Unbound module Cmdliner
  Command exited with code 2.
  </code></pre>
  
  <p>Clearly I'm missing something, but being new to Ocaml, I don't know what else to try.</p>