JUCE icon indicating copy to clipboard operation
JUCE copied to clipboard

[Bug]: JUCE default examples can't build due to missing header

Open ferdnyc opened this issue 3 years ago • 0 comments

Detailed steps on how to reproduce the bug

In a newly-cloned repo...

cmake -B build -S . -DJUCE_BUILD_EXAMPLES=1
cmake --build build

I'm posting this to revisit #1051, where the issue was previously reported. That bug was closed by @tpoole, but I feel the issue still needs to be addressed.

As @dorev mentioned in the initial bug, building examples/Plugins/ReaperEmbeddedViewDemo/ fails due to a missing header, part of the VST2 SDK which is not included with the JUCE source.

The ReaperEmbeddedViewDemo is the only non-compilable example in the source tree. An #include of the missing header was added in commit 3c5f09243a24f6e77e9f5a536fb7135d8aeac771, and reverting that commit allows that example (and thus, all the examples) to compile successfully.

It doesn't seem like the default example set should require undocumented, unhandled external dependencies. Several other VST plugin examples are built by default, using the headers at modules/juce_audio_processors/format_types/VST3_SDK/.

Originally posted by @ferdnyc in https://github.com/juce-framework/JUCE/issues/1051#issuecomment-1115568072

What is the expected behaviour?

All examples compile successfully.

Operating systems

Linux

What versions of the operating systems?

Fedora 35

Architectures

x86_64

Stacktrace

[ 54%] Generating ReaperEmbeddedViewDemo_artefacts/JuceLibraryCode/JuceHeader.h
[ 54%] Building CXX object examples/Plugins/CMakeFiles/ReaperEmbeddedViewDemo.dir/ReaperEmbeddedViewDemo_artefacts/JuceLibraryCode/Main.cpp.o
In file included from JUCE/build/examples/Plugins/ReaperEmbeddedViewDemo_artefacts/JuceLibraryCode/Main.cpp:10:
JUCE/examples/Plugins/ReaperEmbeddedViewPluginDemo.h:70:10: fatal error: pluginterfaces/vst2.x/aeffect.h: No such file or directory
   70 | #include <pluginterfaces/vst2.x/aeffect.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [examples/Plugins/CMakeFiles/ReaperEmbeddedViewDemo.dir/build.make:80: examples/Plugins/CMakeFiles/ReaperEmbeddedViewDemo.dir/ReaperEmbeddedViewDemo_artefacts/JuceLibraryCode/Main.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:3087: examples/Plugins/CMakeFiles/ReaperEmbeddedViewDemo.dir/all] Error 2

Plug-in formats (if applicable)

VST2, VST3

Plug-in host applications (DAWs) (if applicable)

No response

Testing on the develop branch

The bug is present on the develop branch

Code of Conduct

  • [X] I agree to follow the Code of Conduct

ferdnyc avatar May 03 '22 03:05 ferdnyc