I am writing a wrapper for a library foo
, which contains symbols from another helper library bar
, but does not contain shared object dependencies to bar
. My goal is to build and install both foo
and bar
within a single package using BinDeps. BinDeps will successfully build both libs and will find bar
, but keeps failing for foo
due to non-satisfied dependencies.
Provider BinDeps.BuildProcess failed to satisfy dependency - Library foo
This is due to fact that BinDeps performs some checks using dlopen
, which fail since the symbols from bar
are not (yet) available. I could avoid that by loading bar
globally to avoid problems for the checks
Libdl.dlopen(:libbar, Libdl.RTLD_LAZY | Libdl.RTLD_GLOBAL )
however this only works once both libs have already been built.
Similarly even if I prebuild the libs and load bar
, the autogenerated deps.jl will be missing the Libdl.RTLD_GLOBAL
flag.
I wonder what’s the suggested way of dealing with such a problem?