Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile error on Linux #2

Open
tank-trax opened this issue Sep 17, 2021 · 4 comments
Open

Compile error on Linux #2

tank-trax opened this issue Sep 17, 2021 · 4 comments

Comments

@tank-trax
Copy link

tank-trax commented Sep 17, 2021

OS: Linux Debian Bullseye
JUCE: v6.1.1

I tried compiling BlackBird and got this error

Compiling DSPParameters.cpp
In file included from ../../Source/DSP/Voice.h:16,
                 from ../../Source/DSP/Synth.h:15,
                 from ../../Source/DSP/DSPParameters.cpp:12:
../../Source/DSP/VCAOscillator.h:24:11: error: declaration of ‘using LookupTablesBank = class LookupTablesBank<ValueType>’ changes meaning of ‘LookupTablesBank’ [-fpermissive]
   24 |     using LookupTablesBank = LookupTablesBank<ValueType>;
      |           ^~~~~~~~~~~~~~~~
In file included from ../../Source/DSP/VCAOscillator.h:18,
                 from ../../Source/DSP/Voice.h:16,
                 from ../../Source/DSP/Synth.h:15,
                 from ../../Source/DSP/DSPParameters.cpp:12:
../../Source/DSP/LookupTablesBank.h:27:7: note: ‘LookupTablesBank’ declared here as ‘class LookupTablesBank<ValueType>’
   27 | class LookupTablesBank {
      |       ^~~~~~~~~~~~~~~~
make: *** [Makefile:179: build/intermediate/Release/DSPParameters_9b3e457e.o] Error 1

was wondering if you had any clues as to a workaround

@khrykin
Copy link
Owner

khrykin commented Sep 17, 2021

Hi! I haven't tested the build on Linux - it might need a fix or two. If you're able to work on a PR, I would love to give help and guidance. Unfortunately, I won't be able to work towards supporting Linux build right now.

For this particular error, this fix for

template<typename ValueType>
might resolve the issue:

template<typename ValueType>
class VCAOscillator {
public:
    using Oscillator = dsp::Oscillator<ValueType>;
    using Waveform = typename LookupTablesBank<ValueType>::Waveform;

    VCAOscillator() noexcept = default;

#pragma mark - Initialization

    void initialize(const LookupTablesBank<ValueType> &lookupTable) {
        oscillator().initialise([this, &lookupTable](ValueType phase) {
            return lookupTable(phase,
                               currentWaveform,
                               oscillator().getFrequency());
        });
    }

@khrykin khrykin changed the title Compile error Compile error on Linux Sep 17, 2021
@tank-trax
Copy link
Author

thanks for taking a look, unfortunately that did not resolve the issue

please keep this open, hopefully will grab someone's attention

@kmturley
Copy link

+1 for a linux build.

I'm working on a site that lists open-source plugins: https://studiorack.github.io/studiorack-site/
But to list the plugin a minimum requirement is binaries for Mac, Windows and Linux.

Could you test using a Github Action workflow? GitHub can automatically spin up Mac, Windows and Linux images and run the build (at least you would know that it builds, although not whether it runs)

I have examples for Juce:
https://github.com/studiorack/studiorack-plugin-juce/blob/main/.github/workflows/release.yml

and Projucer here:
https://github.com/studiorack/studiorack-plugin-juce/blob/main/.github/workflows/release_projucer.yml

Thanks for the awesome plugin!

@RustoMCSpit
Copy link

any update here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants