Re: Building libfluidsynth to include in python package (Tom M.)
Maybe this will help you. I have a "zero dependencies" fork of fluidsynth in single header format. But it is not full, only synth and player modules, all the rest was removed. It is also based on an older version, I haven't merged with latest version.
Date: Sat, 14 Mar 2020 08:53:56 +0100
From: "Tom M." <[hidden email]>
To: Marc Evanstein <[hidden email]>
Cc: FluidSynth mailing list <[hidden email]>
Subject: Re: [fluid-dev] Building libfluidsynth to include in python
Content-Type: text/plain; charset="UTF-8"
Marc, please make sure to include the mailing list when replying.
On 3/13/2020 7:43 PM - Marc Evanstein wrote:
> Hi Tom -- thanks for your response.
> I'm a little unclear: how would I produce something like the prebuilt
> windows binaries that you linked to when building from source? (The
> process of building from source has always been a bit mysterious to me.)
> I followed the instructions at
> https://github.com/FluidSynth/fluidsynth/wiki/BuildingWithCMake, and I
> seem to have done all the steps successfully (installing the
> dependencies, running cmake, running make), but "make install" just
> seems to install it in the system, right? How do I make a standalone
The term "standalone" is technically not correct. The binaries that
you build will always have operating system specific dependencies
(e.g. the kernel, the standard C library, socket/networking libs).
That's why I said you need to build fluidsynth on all platforms and
architectures that you plan to support. After each "make" step you put
the libfluidsynth in a zip file (or whatever you plan for
distributing). Additionally, you may include some libraries that
fluidsynth depends on in that zip as well. Most notably: glib. Finding
a good compromise which dependency libraries to bundle and which not
is difficult. To see all the libraries that fluidsynth depends on you
may use the dependency walker on windows. On Linux you may simply
execute ldd libfluidsynth.so
make install installs fluidsynth to the system, yes, so you don't need