I'm getting the following error: Reference to undefined global `Service_piqi' Where I have a service.piqi file and I'm generating the interface automatically, even adding it to my compile command. Compilation is failing on literally the last command when I should spit out the result: ocamlfind ocamlc -o Serve serve.cmo main.cmo service_piqi.cmo Even when I open up the machine generated ml file, it includes the correct declaration for the module that I want to use. If I change the module name in serve.ml, which uses the module in service_piqi.ml, I get unbound module errors. I have no earthly idea what is going on. How do I get compilation to complete?