diff -ur oasis-0.3.0-/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml oasis-0.3.0/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml
--- oasis-0.3.0-/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml	2012-06-29 00:24:17.000000000 +0200
+++ oasis-0.3.0/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml	2013-01-12 00:58:43.956137044 +0100
@@ -66,7 +66,16 @@
 let find_syntaxes () = ["camlp4o"; "camlp4r"]
 
 (* ocamlfind command *)
-let ocamlfind x = S[A"ocamlfind"; x]
+let env_filename = Pathname.basename BaseEnvLight.default_filename
+let env = BaseEnvLight.load ~filename:env_filename ~allow_empty:true ()
+
+let ocamlfind_prog =
+  try
+    BaseEnvLight.var_get "ocamlfind" env
+  with Not_found ->
+    Printf.eprintf "W: Cannot get variable ocamlfind";
+    "ocamlfind"
+let ocamlfind x = S[Sh ocamlfind_prog; x]
 
 let dispatch =
   function
@@ -78,7 +87,8 @@
         Options.ocamlopt   := ocamlfind & A"ocamlopt";
         Options.ocamldep   := ocamlfind & A"ocamldep";
         Options.ocamldoc   := ocamlfind & A"ocamldoc";
-        Options.ocamlmktop := ocamlfind & A"ocamlmktop"
+        Options.ocamlmktop := ocamlfind & A"ocamlmktop";
+        Options.ocamlmklib := ocamlfind & A"ocamlmklib"
                                 
     | After_rules ->
         
