Module Dl

module Dl: sig .. end
Bindings to the dlopen / dlsym interface.

type library 
The type of dynamic libraries, as returned by Dl.dlopen.
exception DL_error of string
An error condition occurred when calling Dl.dlopen, Dl.dlclose or Dl.dlsym. The argument is the string returned by the dlerror function.
type flag = 
| RTLD_LAZY
| RTLD_NOW
| RTLD_GLOBAL
| RTLD_LOCAL
| RTLD_NODELETE
| RTLD_NOLOAD
| RTLD_DEEPBIND
Flags for Dl.dlopen

Note for windows users: Only RTLD_NOLOAD and RTLD_NODELETE are supported. Passing no or any other flags to Dl.dlopen will result in standard behaviour: just LoadLibrary is called. If RTLD_NOLOAD is specified and the module is not already loaded, a Dl.DL_error with the string "library not loaded" is thrown; there is however no test, if such a library exists at all (like under linux).

val dlopen : ?filename:string -> flags:flag list -> library
Open a dynamic library.

Note for windows users: the filename must be encoded in UTF-8

val dlclose : handle:library -> unit
Close a dynamic library.
val dlsym : ?handle:library -> symbol:string -> nativeint
Look up a symbol in a dynamic library.