Hello, I'm trying to use Llvm_bitwriter + ocamlbuild, but it doesn't recognize its dependency on Unix, so it doesn't compile. Minimal case: (* FILE: minimal.ml *) let main () let m = Llvm.create_module (Llvm.global_context ()) "test" in ignore (Llvm_bitwriter.output_bitcode stdout m) ;; main () (* FILE: _tags *) <*.{byte,native}>: g++, use_unix, use_llvm, use_llvm_bitwriter (* FILE: myocamlbuild.ml *) open Ocamlbuild_plugin;; ocaml_lib ~extern:true "llvm";; ocaml_lib ~extern:true "llvm_bitwriter";; flag ["link"; "ocaml"; "g++"] (S[A"-cc"; A"g++"]);; I try to compile with the command line ocamlbuild minimal.native and get the result: Finished, 1 target (0 cached) in 00:00:02. + /usr/local/bin/ocamlopt.opt llvm.cmxa llvm_bitwriter.cmxa -cc g++ unix.cmxa minimal.cmx -o minimal.native File "_none_", line 1, characters 0-1: Error: No implementations provided for the following modules: Unix referenced from /usr/local/lib/ocaml/llvm_bitwriter.cmxa(Llvm_bitwriter) Command exited with code 2. Compilation unsuccessful after building 4 targets (0 cached) in 00:00:01. (note that unix.cmxa appears after llvm_bitwriter.cmxa). However, if I try ocamlopt.opt -cc g++ unix.cmxa llvm.cmxa llvm_bitwriter.cmxa minimal.ml it compiles fine (note that unix.cmxa is now listed BEFORE llvm_bitwriter.cmxa). Is there any way to force unix.cmxa be put first in the compilation command line? I would really prefer not to have to write a Makefile... Thanks! N