Some of my Qt/C++ program’s Mac users were complaining that my app (which links to libgvc.6.dylib
) was crashing on startup, and when I investigated, I found that the reason was because libgvc.6.dylib
, libgvplugin_dot_layout.6.dylib
, and libgvplugin_neato_layout.6.dylib
all had a dependency on /usr/local/opt/libtool/lib/libltdl.7.dylib
, which wasn’t installed on the user’s machine.
Being lazy, I took the easy way out and just changed my build script to specify -Denable_ltdl=OFF
as part of the cmake configuration line, and that appears to remove the dependency.
The other option would be to include the libtdl library in my application’s bundle, and use install_name_tool
to patch the libraries to look for it there instead of in /usr/local/opt/libtool/lib
, which I could do, but I’m not sure there’s any significant benefit to it vs what I’m doing now.
So my question is, what functionality am I missing out on by setting -Denable_libtdl=OFF
in cmake? Is just that using libltdl reduces RAM usage on startup not loading plugins until/unless my code actually uses them? Or is there something else also?
Thanks,
Jeremy