# Is there any significant downside to specifying -Denable\_ltdl=OFF when configuring GraphViz?

**URL:** https://forum.graphviz.org/t/is-there-any-significant-downside-to-specifying-denable-ltdl-off-when-configuring-graphviz/1700
**Category:** Dev
**Created:** [July 10, 2023, 6:36pm UTC](https://forum.graphviz.org/t/is-there-any-significant-downside-to-specifying-denable-ltdl-off-when-configuring-graphviz/1700 "2023-07-10T18:36:18Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![jeremyf](https://avatars.discourse-cdn.com/v4/letter/j/a587f6/32.png) [@jeremyf](https://forum.graphviz.org/u/jeremyf)
#### Post date: [July 10, 2023, 6:36pm UTC](https://forum.graphviz.org/t/is-there-any-significant-downside-to-specifying-denable-ltdl-off-when-configuring-graphviz/1700/1 "2023-07-10T18:36:18Z")

</div>

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
