- Home /
Unity cannot find dependent dylib for plugin
Hi, I have a 3rd party, native C++ library that I want to use with Unity. I started by writing a simple Xcode plugin based on the midi plugin example. I return strings inside the functions of my plugin and verified that the plugin is working from within Unity.
Next I added code to call a 3rd party dylib from within my new plugin. It compiles without errors, but when run in Unity I get a DllNotFoundException.
I tried adding a build phase to Xcode to embed the dylib in resources, and also tried copying the dylib to the plugins folder where my plugin resides, but the error remains the same.
Any advice?
Thanks
Answer by bibbinator · Jan 25, 2012 at 02:37 AM
I believe I have a good fix for this. The shared library needs to have it's "Installation Directory" on Xcode set to @loader_path/../Frameworks and then the shared library needs to be put into the bundle's Frameworks directory either manually or as a build phase.
Note that I wasn't able to use install_name_tool -rpath to change the name without rebuilding in Xcode (the command doesn't return an error, but the plugin still got the dlllnotfoundexception).
Hi, could I get more detail as to how this is achieved? How do I set the "Installation Directory" on the 3rd party library?
I had to go back to the original author to get them to change it. $$anonymous$$aybe you could try using a hex editor and hack the library manually.
I see, unfortunately going back to the Author is not really an option for me. Thanks for getting back to me though!
Your answer
Follow this Question
Related Questions
How to make Unity find .dylib files? 5 Answers
Is Pro really required for plugins on iOS? 1 Answer
Will Unity 4.0 support sending complex data from Android or iOS to the Unity scripts? 1 Answer
Plugins for Bluetooth/Wifi Multiplayer in windows phone 8? 0 Answers
Using Native Plugins in an Android Project and Executing in the Unity Editor 0 Answers