zamaudio / zam-plugins

Collection of LADSPA/LV2/VST/JACK audio plugins for high-quality processing
http://www.zamaudio.com/?p=976
GNU General Public License v2.0
265 stars 37 forks source link

Compiling from git fails on DPF #83

Closed gitterdude closed 2 years ago

gitterdude commented 2 years ago

The current git version of DPF, which gets pulled in when cloning zam, doesn't have dgl/src/Common.hpp anymore and the zam compilation fails when it can't find it:

Compiling ZamEQ2UI.cpp
In file included from ZamEQ2UI.hpp:23,
                 from ZamEQ2UI.cpp:18:
../../widgets/ZamWidgets.hpp:26:10: fatal error: ../dpf/dgl/src/Common.hpp: Fileor folder not found
   26 | #include "../dpf/dgl/src/Common.hpp"

Tried on Ubuntu 20.04 with gcc 9.3.0

Another error seemingly related to the new DPF is

In file included from ZaMultiCompPlugin.cpp:18:
ZaMultiCompPlugin.hpp:140:12: error: ‘DISTRHO::String DISTRHO::ZaMultiCompPlugin::getState(const char*) const’ marked ‘override’, but does not override
  140 |     String getState(const char* key) const override;

It doesn't occur if I check out an older version of DPF.

(edited for clarity)

falkTX commented 2 years ago

That Common.hpp file was meant for DPF internals https://github.com/DISTRHO/DPF/blob/master/dgl/src/Common.hpp Weird that Zam was using it.

In any case the internal event handling behaviour is now public, accessed by https://github.com/DISTRHO/DPF/blob/main/dgl/EventHandlers.hpp

gitterdude commented 2 years ago

For people compiling from git; to compile the current zam-plugins, e7077fc from 20 Dec 2020, you need to do this first

cd dpf
git checkout 68ca91217df
cd ..
falkTX commented 2 years ago

I think your use of git submodules is wrong then, from what I see in this repo it points to the correct commit hash for dpf. So a recursive clone should work just fine as-is

gitterdude commented 2 years ago

Ah, you're right. zam uses the git protocol to clone the submodule, and that's blocked on the network I'm using. So I had to do a manual clone using https and missed that the original clone uses a specific commit of DPF.

Sorry for the noise.