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

[BUG] Build error: no matching function for call to ResampledRNNAccelerated #334

Open
jony543 opened this issue Oct 29, 2023 · 1 comment
Assignees
Labels
bug Something isn't working

Comments

@jony543
Copy link

jony543 commented Oct 29, 2023

Hi,
I'm trying to build on mx linux (debian 11) and getting the following error:

[ 47%] Building CXX object CMakeFiles/BYOD.dir/src/processors/drive/MetalFace.cpp.o In file included from /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/MetalFace.h:3, from /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/MetalFace.cpp:1: /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h: In instantiation of ‘void ResampledRNNAccelerated<numIns, hiddenSize, RecurrentLayerType>::process(const juce::dsp::AudioBlock<float>&, std::span<const float>) [with bool useResiduals = false; int numIns = 1; int hiddenSize = 28; int RecurrentLayerType = 1]’: /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/MetalFace.cpp:57:38: required from here /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h:59:31: error: no matching function for call to ‘ResampledRNNAccelerated<1, 28>::process<false>(std::enable_if_t<true, nonstd::span_lite::span<float, 18446744073709551615> >, std::span<const float>&)’ 59 | process<useResiduals> (bufferView.getWriteSpan (0), condition_data); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h:20:10: note: candidate: ‘void ResampledRNNAccelerated<numIns, hiddenSize, RecurrentLayerType>::process(std::span<float>, std::span<const float>) [with bool useResiduals = false; int numIns = 1; int hiddenSize = 28; int RecurrentLayerType = 1]’ 20 | void process (std::span<float> block, std::span<const float> condition_data = {}) noexcept | ^~~~~~~ /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h:20:36: note: no known conversion for argument 1 from ‘std::enable_if_t<true, nonstd::span_lite::span<float, 18446744073709551615> >’ {aka ‘nonstd::span_lite::span<float, 18446744073709551615>’} to ‘std::span<float>’ 20 | void process (std::span<float> block, std::span<const float> condition_data = {}) noexcept | ~~~~~~~~~~~~~~~~~^~~~~ /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h:55:10: note: candidate: ‘void ResampledRNNAccelerated<numIns, hiddenSize, RecurrentLayerType>::process(const juce::dsp::AudioBlock<float>&, std::span<const float>) [with bool useResiduals = false; int numIns = 1; int hiddenSize = 28; int RecurrentLayerType = 1]’ 55 | void process (const juce::dsp::AudioBlock<float>& block, std::span<const float> condition_data = {}) noexcept | ^~~~~~~ /home/jonathan/Plugins/chowdsp/BYOD/src/processors/drive/neural_utils/ResampledRNNAccelerated.h:55:55: note: no known conversion for argument 1 from ‘std::enable_if_t<true, nonstd::span_lite::span<float, 18446744073709551615> >’ {aka ‘nonstd::span_lite::span<float, 18446744073709551615>’} to ‘const juce::dsp::AudioBlock<float>&’ 55 | void process (const juce::dsp::AudioBlock<float>& block, std::span<const float> condition_data = {}) noexcept | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ gmake[3]: *** [CMakeFiles/BYOD.dir/build.make:837: CMakeFiles/BYOD.dir/src/processors/drive/MetalFace.cpp.o] Error 1 gmake[2]: *** [CMakeFiles/Makefile2:572: CMakeFiles/BYOD.dir/all] Error 2 gmake[1]: *** [CMakeFiles/Makefile2:454: CMakeFiles/BYOD_VST3.dir/rule] Error 2 gmake: *** [Makefile:197: BYOD_VST3] Error 2

I used to manage to build it on my previous system. Any idea what am I missing?
Thannks

@jony543 jony543 added the bug Something isn't working label Oct 29, 2023
@jatinchowdhury18
Copy link
Contributor

Hello! Is it possible that the machine you're trying to build on does not support AVX instructions (or maybe it has something to do with the compiler you're using?). Or maybe CMake is not correctly detecting that your machine supports AVX instructions.

We should be able to determine this from the output of your CMake configure command, specifically you should see some output that says either "Compiler supports flags: -mavx -mfma" or "Compiler DOES NOT supports flags: -mavx -mfma". For more information see here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants