pac-dev / protoplug

Create audio plugins on-the-fly with LuaJIT.
Other
285 stars 36 forks source link

Protoplug 1.4.0 build no longer running on recent Ubuntus (and cannot rebuild) #56

Open YPares opened 1 year ago

YPares commented 1 year ago

Hello! Latest linux build is not working on Ubuntu 22.04.1 LTS:

Failed to load VST 2 plug-in /home/yves/.vst2/Lua Protoplug Fx.so: /lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by /home/yves/.vst2/Lua Protoplug Fx.so)

libcurl.so.4: version 'CURL_OPENSSL_3' not found is not really easy to fix. As you can guess, I cannot really switch libcurl versions on my system like that... So I tried to rebuild Protoplug from master but apparently the JUCE code coming along fails to build:

../../../../Frameworks/JuceModules/juce_graphics/colour/juce_PixelFormats.h:116:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[3]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
  116 |     forcedinline uint8& getAlpha() noexcept           { return comps [indexA]; }
      |                                                                ~~~~~~~~~~~~~^
../../../../Frameworks/JuceModules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getRed()’:
../../../../Frameworks/JuceModules/juce_graphics/colour/juce_PixelFormats.h:117:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[2]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
  117 |     forcedinline uint8& getRed() noexcept             { return comps [indexR]; }
      |                                                                ~~~~~~~~~~~~~^
../../../../Frameworks/JuceModules/juce_graphics/colour/juce_PixelFormats.h: In member function ‘juce::uint8& juce::PixelARGB::getGreen()’:
../../../../Frameworks/JuceModules/juce_graphics/colour/juce_PixelFormats.h:118:77: error: cannot bind packed field ‘((juce::PixelARGB*)this)->juce::PixelARGB::<anonymous>.juce::PixelARGB::<unnamed union>::comps[1]’ to ‘juce::uint8&’ {aka ‘unsigned char&’}
  118 |     forcedinline uint8& getGreen() noexcept           { return comps [indexG]; }
      |                                                                ~~~~~~~~~~~~~^