prof-spock / FluidSynthPlugin

Simple Wrappers Around the FluidSynth Library as DAW Plugin and Pedantic Command Line Processor
5 stars 0 forks source link

release v0.7.1 Linux VST3 doesn't work #15

Open mrbumpy409 opened 2 months ago

mrbumpy409 commented 2 months ago

If I use version 0.7.1 of the plugin for Linux downloaded from the GitHub release, FluidSynthPlugin fails the VST plugin scan in REAPER and does not appear in the list of available plugins. This happens on both of my Linux PCs. If I compile from source, however, the resulting VST3 plugin scans successfully and works perfectly in Linux.

OS: KDE Neon 6.0 User Edition (Plasma Desktop 6.1.2, KDE Frameworks 6.3.0, Qt 6.7.0) Linux Kernel: 6.5.0-42-lowlatency (64-bit)

mrbumpy409 commented 1 month ago

I tested the updated v0.7.1 Linux build released a few days ago, but this latest version also fails to appear in my plugins list. As before, the plugin shows up in REAPER's list of plugins that failed to scan.

prof-spock commented 1 month ago

Hello mrbumpy409,

sorry to have kept you waiting.

But I could not reproduce the problem here at all (see attached screenshot with the cancellation test on Reaper 7.19, Linux 6.8.0-38-generic). I also verified this by copying the VST3 bundle from the repository to my VST directory.

This puzzles me especially when your own source build seems to work flawlessly.

The only idea I have is that the fluidsynth library version libfluidsynth.so.3 provided in the VST3 directory FluidSynthPlugin.vst3/Contents/x86_64-linux is incompatible to your system.

Could you kindly check whether the libfluidsynth.so.3 on your system works (by copying it over to the VST3 bundle into the above directory)? You could also do a binary comparison (via cmp) first to check whether those libraries are really different...

Best regards Prof. Spock Fluidsynthplugin_on_Linux-20240730

mrbumpy409 commented 1 month ago

Hi Prof. Spock,

So interestingly, it appears that the bundled libfluidsynth.so.3 is ignored by the plugin (at least when running my compiled version on a distro based on Ubuntu 22.04). I found this out when trying to repro this bug in VirtualBox. Neither the release version nor my compiled version of the plugin would appear in REAPER until I installed the system FluidSynth package, and then only my compiled version would run. The "About" box in FluidSynth Plugin confirmed that the system libfluidsynth3 was being used, as the version reported matched the system package (2.2.5) and not the bundled .so version (2.3.4). I hadn't noticed this behavior on my system, as I had updated my system libfluidsynth version manually to 2.3.4.

So, as you would expect under these circumstances, replacing or removing the plugin's copy of libfluidsynth.so.3 has no affect on anything.

Let me know if you need me to do any tests or run a debug build. I'll be gone through the weekend starting tomorrow, but I will be happy to run tests when I return. If it's of any help, I can repro this bug using a VirtualBox install of Xubuntu 22.04 and REAPER. The FluidSynthPlugin.vst3 folder is being copied into ~/.vst3.

Here is my custom compiled version of FluidSynth Plugin.

mrbumpy409 commented 1 month ago

After further testing using both Kubuntu and Fedora KDE Live ISOs in VirtualBox, there are two separate issues here leading to a failed REAPER VST scan in Linux:

  1. The release version of FluidSynth Plugin won't run or scan successfully in Ubuntu versions earlier than 23.10. My custom compiled version works because it was compiled on KDE neon (Ubuntu 22.04 base).
  2. FluidSynth Plugin won't run or scan successfully without the system FluidSynth library installed (libfluidsynth3 in Ubuntu, fluidsynth-libs in Fedora). The plugin doesn't seem to be able to load its bundled FluidSynth library.

To deal with issue no. 1, you could simply document that FluidSynth Plugin requires Ubuntu version 23.10 or later. I haven't tested with older Fedora versions. As a workaround for issue no. 2, at least for now, you could specify that the system FluidSynth libraries need to be installed.

EDIT: I have split issue no. 2 into its own bug report: issue #17

prof-spock commented 3 weeks ago

Hello mrbumpy409,

thanks for your detailed analysis and especially the effort you have put into this.

Okay, it looks like the following is happening in Linux:

To have a useful distribution I shall add all those libraries and also make sure that they work on previous versions and other Linux distributions. This seems to be a bit messy, but it is not helpful to provide a source-only distribution.

Best regards, Prof. Spock