[Omake] OCAML_LIBS and OCAMLFINDFLAGS

Sashan Govender sashang at gmail.com
Sat Jun 19 20:31:32 PDT 2010


Hi

I have a set of libraries in my project. One of them (libtracer) is
plain OCaml code, libtracerp4 is a campl4 library over libtracer and
the other library (libzygote) depends on it. So the dependency chain
looks like this:

libtracer->libtracerp4->libzygote

However if I cd into the libzygote build directory and try to build
things this is what I get:

- scan build/libzygote scan-ocaml-IPv4Header.ml
+ ocamlfind ocamldep -verbose -pp 'camlp4orf -I
/usr/lib64/ocaml/bitstring bitstring.cma bitstring_persistent.cma
pa_bitstring.cmo -I ../libtracer libtracer.cma -I ../libtracerp4
libtracerp4.cma' -package bitstring,unix -modules IPv4Header.ml
     | Shell.ocamldep-postproc()
Camlp4: Uncaught exception: DynLoader.Error ("libtracer.cma", "file
not found in path")


This is what my OCAMLFINDFLAGS looks like:

OCAMLFINDFLAGS = -verbose -pp 'camlp4orf -I /usr/lib64/ocaml/bitstring
bitstring.cma bitstring_persistent.cma \
  pa_bitstring.cmo -I ../libtracer libtracer.cma -I ../libtracerp4 \
  libtracerp4.cma'

I also specify that an OCAML_LIBS variable because I thought that this
is what's used to specify libraries that this library depends on.

OCAML_LIBS += ../libtracer ../libtracerp4

It fails because a dependent library, libtracer, isn't built. So how
do I specify this correctly? Is OCAML_LIBS the right variable to use
to specify a dependent library.

Thanks


More information about the Omake mailing list