caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [announce] dl-runtime
@ 2000-12-27 18:47 Alain Frisch
  0 siblings, 0 replies; only message in thread
From: Alain Frisch @ 2000-12-27 18:47 UTC (permalink / raw)
  To: caml-list

Hello,

this is to announce the availability of dl-runtime, a patch to OCaml for
using primitives from shared libraries.

This is done by allowing runtime systems (ocamlrun or custom systems)
to load shared libraries, in addition to statically linked primitives,
in order to fulfill the requirements of the bytecode primitive table.

There is no special annotation in the source code: the choice of using
shared libraries is done at runtime.

There are two ways to specify which libraries to import:

- give this information via the runtime system command line ("-l..."):
    ocamlrun -l/usr/local/lib/ocaml/libunix_so.so my_program
  or:
    LD_LIBRARY_PATH=/usr/local/lib/ocaml ocamlrun -llibunix_so.so
my_program

- give the Caml linker a set of shared libraries to remember at runtime
  ("-dl ...")
    ocaml -noautolink -o my_program unix.cma my_program.cmo -dl libunix_so.so

  This simply puts annotations in the bytecode file.


For instance, it is possible to build shared versions of libunix,
libgraphics, libstr ... and use a small generic runtime system
to run any bytecode program using these libraries.

The patch is known to work under Linux 2.2 and Solaris 5.7.

Information: http://www.eleves.ens.fr:8080/home/frisch/info/README-DL
Download: http://www.eleves.ens.fr:8080/home/frisch/soft


-- 
  Alain Frisch



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2000-12-30 19:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-12-27 18:47 [announce] dl-runtime Alain Frisch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).