The dynamic library loader.
Before loading it verifies if the versions are compatible
and if the symbols are presents.
It loads the files in different way depending on the operating system.
In particular the scope of the symbols is different between Unix and
Windows.
In Unix system the symbols are loaded with the flags:
Constant used to check if a node is compatible with the currently running Zenoh Flow daemon.
As nodes are dynamically loaded, this is to prevent (possibly cryptic) runtime error due to
incompatible API.
Constant used to check if a node was compiled with the same version of the Rust compiler than
the currently running Zenoh Flow daemon.
As Rust is not ABI stable, this is to prevent (possibly cryptic) runtime errors.