[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] making a standalone fluidsynth plugin on Mac

From: Antoine Schmitt
Subject: Re: [fluid-dev] making a standalone fluidsynth plugin on Mac
Date: Sun, 25 Mar 2012 23:48:01 +0200

Hi list,
coming back on this. I stippped down my dependencies, and now my Xtra only depends on glib and gthread.
But now I am stuck again, trying to not depend on these shlibs.
- I used Sven install_name_tool idea, which seems to work and load the locally copied shlibs, but then it crashes my app at runtime, with the error : 25/03/12 23:29:32 [0x0-0x1514513].com.adobe.director.application[47865] GLib-ERROR **: The thread system is not yet initialized.
I have found no lead on the net to understand what this means.
- I tried compiling the glib static library by hand from the sources, in order to ba able to statically link against it, and this really became a small hell, with dependencies on libffi then gettext which required compiling them, which required new dependencies... And so on. I tried to find a way with fink to compile the static version but did not find any. I also tried to remove fink (which is really complex — sorry Ebrahim), and use homebrew, which is much simpler, but same problem : no way to have them compile the static version of glib.
Now I am stuck. Any idea ?
And I know that I still have the Windows version, and I am scared...
This glib dependency is really a problem in my case (a shlib plugin using fluidsynth, on Mac and Windows)... ;(
Thanks for all help

Le 11 mars 12 à 12:02, Sven Meier a écrit :


for jOrgan I use homebrew to build Fluidsynth on OS X:


I then use install_name_tool to tweak the loader_path of all dependencies. This allows me to bundle all required libraries into my application.

Hope this helps

On 03/10/2012 11:38 PM, Antoine Schmitt wrote:
Hi list,
I'm currently porting my fluidsynth Xtra (name for Adobe Director plugin, i.e. a shared library that is dynamically loaded into the final executable) to fluidsynth 1.1.5. Previously, it was on 1.0.7. (visible on www.schmittmachine.com/fluidXtra.html).

The big change is in the build method of fluidsynth. I used cmake, as indicated in the doc for MacOSX. I used fink to get all the needed packages. This is the first time i deal with fink and cmake. Interesting and sexy, but sometimes a bit obscure...

My problem is that I end up with an Xtra (DLL) that depends on many fink shared libraries, which are not available on the end-user system, contrary to the standard shared libraries (Apple frameworks). So the Xtra cannot load and run.

Here are all the dependencies (found with otool) :

/System/Library/Frameworks/CoreAudio.framework/Versions/A/ CoreAudio (compatibility version 1.0.0, current version 1.0.0) /usr/local/lib/libgthread-2.0.0.dylib (compatibility version 1501.0.0, current version 1501.0.0) /usr/local/lib/libglib-2.0.0.dylib (compatibility version 1501.0.0, current version 1501.0.0) /sw/lib/libreadline.5.dylib (compatibility version 5.0.0, current version 5.0.0) /System/Library/Frameworks/CoreMIDI.framework/Versions/A/ CoreMIDI (compatibility version 1.0.0, current version 49.0.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/ CoreServices (compatibility version 1.0.0, current version 32.0.0) /System/Library/Frameworks/AudioUnit.framework/Versions/A/ AudioUnit (compatibility version 1.0.0, current version 1.0.0) /sw/lib/libdbus-1.3.dylib (compatibility version 9.0.0, current version 9.8.0) /sw/lib/libsndfile.1.dylib (compatibility version 2.0.0, current version 2.15.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 136.0.0) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0) /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/ CoreFoundation (compatibility version 150.0.0, current version 476.0.0)

The /System/Library/Frameworks are not a problem. But the /usr/ local/lib ones are. as well as the /sw/lib/libdbus (part of fink I think), and maybe /usr/lib/libstdc also ?

I tried looking for the static libraries for these fink packages but they do not seem to have been built by the get-apt system. I don't find them on my system. And I can't find how to build them.

Question : how do I build and use the static libraries of these fink packages ? Or how do I include the static version of these libraries in my shared library.

Thank you !

++ as :: Antoine Schmitt

fluid-dev mailing list

fluid-dev mailing list

++ as :: Antoine Schmitt

reply via email to

[Prev in Thread] Current Thread [Next in Thread]