Support compile time linking.
It was removed in 0.10.0 in favor of manually finding the dynamic library and loading symbols.
This would be simply linking, not static linking.
As I mentioned in #179, the jack crate now always links to libjack, even if the dynamic loading feature is enabled. If the dynamic_loading feature is enabled, then the dynamic linking modules probably shouldn't be generated and included.
As I mentioned in #179, the
jackcrate now always links to libjack, even if the dynamic loading feature is enabled. If thedynamic_loadingfeature is enabled, then the dynamic linking modules probably shouldn't be generated and included.
How does #180 look?
I guess that probably works. Does functions::dynamic_loading always need to be re-exported (or be available even) even when using compile-time dynamic linking?
In Nix, I think the Cargo package wrapper uses patchelf to change dynamically linked paths to the correct place on the built system. I think this essentially operates on the information displayed by ldd.
Because libjack2.so.0 is runtime (? manually? programmatically?) linked it's not discovered and updated, and it fails to start at runtime.
I realize Nix users might be minor, but I think there's many other tools that rely on ldd information and libjack may be used in a wide variety of software, some of which may be impacted.