|Did you know ...||Search Documentation:|
|Low-level operations on shared libraries|
The interface defined in this section allows the user to load shared
.so files on most Unix systems,
files on Windows). This interface is portable to Windows as well as to
Unix machines providing dlopen(2) (Solaris, Linux,
FreeBSD, Irix and many more) or shl_open(2) (HP/UX). It
is advised to use the predicates from section
12.2.3 in your application.
open_shared_object(File, Handle, ). See also open_shared_object/3, load_foreign_library/1 and use_foreign_library/1.
On errors, an exception
is raised. Message is the return value from dlerror().
RTLD_DEEPBINDon systems where this predicate is implemented using dlopen() and these flags are supported. If the flag is not supported on the target OS, the corresponding option is silently ignored.
global, making the new symbols available to all subsequently loaded shared objects.
now(true)is the same as
resolve(now). Provided for backward compatibility.
global(true)is the same as
visibility(global). Provided for backward compatibility.
RTLD_NOLOAD. This returns a handle to the object if it is already loaded and
NULLotherwise. It causes this predicate to fail silently if the object is not loaded.
Note that these flags may not be supported by your operating system. Check the documentation of dlopen() or equivalent on your operating system. Unsupported flags are silently ignored.