[LV2] Confusion between dylib on macOS

Pierre Guillot guillotpierre6 at gmail.com
Fri Aug 14 07:57:04 PDT 2020


I encountered a problem that seems to be specific to the way the LV2
dynamic libraries are loaded macOS. I try to explain my problem: the plugin
Camomile is a "versatile" plugin, basically, the user just has to put a
Pure Data patch next to the dynamic library, rename the dynamic library
accordingly to the patch and to create the ttl files for the LV2 format.
And once the plugin is loaded, the plugin will load and run the Pure data
patch (there is a small script released with the plugin that does all of
that automatically). It means that if the user has two plugins (PluginA and
PluginB), each LV2 bundle contains the same dynamic library that has been
renamed (from CamomileLV2.dylib to PluginA.dylib and PluginB.dylib). It
works fine on Linux and Windows but on macOS, once a first plugin (Plugin1
for instance) is loaded, any other "Camomile" plugin (like PluginB) cannot
be loaded. I tried to debug and it seems that even if the DAW found PluginB
(using the ttl files), when it tries to load this second plugin (PluginB),
it uses the dynamic library that has been previously loaded (PluginA.dylib)
that returns the URI of PluginA and so, that is not consistent with
PluginB. I tried on Ardour and Carla that are both based on lilv I think.
And there is no problem with AudioUnit and VST3 formats. So perhaps the
problem is with the way lilv stores and maps the dynamic libraries? If you
have any idea of what could be the cause of the problem, it would be great!
You can test it using the last pre-release (v1.0.7)
Any help would be really appreciated!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lv2plug.in/pipermail/devel-lv2plug.in/attachments/20200814/b241b089/attachment.html>

More information about the Devel mailing list