Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Bark <martin@barkynet.com>
To: buildroot@busybox.net
Subject: [Buildroot] [v2 1/2] caps: new package
Date: Wed, 06 Aug 2014 22:26:22 +0100	[thread overview]
Message-ID: <53E29D7E.4020906@barkynet.com> (raw)
In-Reply-To: <20140806221449.2aff1359@free-electrons.com>

Thomas,

On 06/08/14 21:14, Thomas Petazzoni wrote:
> Dear Martin Bark,
>
> On Wed,  6 Aug 2014 01:02:06 +0100, Martin Bark wrote:
>> CAPS is a collection of audio plugins comprising virtual guitar
>> amplification and a small range of basic classic effects, signal
>> processors and generators of often elementary and occasionally
>> exotic nature.
>>
>> The plugins aim to satisfy the highest demands in sound quality
>> with maximal computational efficiency and zero latency.
>>
>> Signed-off-by: Martin Bark <martin@barkynet.com>
>> CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>>
>> ---
>>
>> Changes v1 -> v2:
>>    - Added dependency to BR2_INSTALL_LIBSTDCPP (Thomas Petazzoni)
>>    - Add description and Signed-off-by to patch (Thomas Petazzoni)
>>    - Fixed use of $(TARGET_CONFIGURE_OPTS) and $(TARGET_MAKE_ENV) (Thomas Petazzoni)
>
> Thanks for this new version. Review-wise, it looks good, but
> unfortunately, it doesn't build here:
>
> /home/thomas/projets/buildroot/output/host/usr/bin/arm-linux-g++  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os  -fPIC -DPIC  -o Eq.o -c Eq.cc
> In file included from dsp/Oversampler.h:35:0,
>                   from Amp.h:35,
>                   from Amp.cc:30:
> dsp/windows.h: In function ?void DSP::kaiser(sample_t*, int, double, double)?:
> dsp/windows.h:165:17: error: there are no arguments to ?finite? that depend on a template parameter, so a declaration of ?finite? must be available [-fpermissive]
> dsp/windows.h:165:17: note: (if you use ?-fpermissive?, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
> In file included from Eq.h:36:0,
>                   from Eq.cc:33:
> dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4f::set_eq(v4f_t, v4f_t, v4f_t)?:
> dsp/v4f_BiQuad.h:145:17: error: ?pow10f? was not declared in this scope
> dsp/v4f_BiQuad.h:145:27: error: no matching function for call to ?v4f_map(v4f_t&)?
> dsp/v4f_BiQuad.h:145:27: note: candidate is:
> In file included from Eq.h:35:0,
>                   from Eq.cc:33:
> dsp/v4f.h:74:7: note: template<float (* fn)(float)> v4f_t v4f_map(v4f_t)
> dsp/v4f.h:74:7: note:   template argument deduction/substitution failed:
> In file included from Eq.h:36:0,
>                   from Eq.cc:33:
> dsp/v4f_BiQuad.h:145:27: error: template argument 1 is invalid
> In file included from Compress.h:36:0,
>                   from Compress.cc:28:
> dsp/windows.h: In function ?void DSP::kaiser(sample_t*, int, double, double)?:
> dsp/windows.h:165:17: error: there are no arguments to ?finite? that depend on a template parameter, so a declaration of ?finite? must be available [-fpermissive]dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4fBank<N>::set_eq(v4f_t*, v4f_t*, v4f_t*)?:
> dsp/v4f_BiQuad.h:432:18: error: ?pow10f? was not declared in this scope
>
> dsp/windows.h:165:17: note: (if you use ?-fpermissive?, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
> dsp/windows.h: In instantiation of ?void DSP::kaiser(sample_t*, int, double, double) [with void (* F)(sample_t&, sample_t) = DSP::apply_window; sample_t = float]?:
> dsp/Oversampler.h:73:5:   required from ?void DSP::Oversampler<Oversample, FIRSize>::init(float) [with int Oversample = 2; int FIRSize = 32]?
> dsp/Oversampler.h:65:6:   required from ?DSP::Oversampler<Oversample, FIRSize>::Oversampler() [with int Oversample = 2; int FIRSize = 32]?
> Amp.h:44:7:   required from ?static void* Descriptor<T>::_instantiate(const _LADSPA_Descriptor*, ulong) [with T = AmpVTS; LADSPA_Handle = void*; _LADSPA_Descriptor = _LADSPA_Descriptor; ulong = long unsigned int]?
> Descriptor.h:123:5:   required from ?void Descriptor<T>::autogen() [with T = AmpVTS]?
> Amp.cc:222:2:   required from here
> dsp/windows.h:165:3: error: ?finite? was not declared in this scope
> dsp/windows.h: In instantiation of ?void DSP::kaiser(sample_t*, int, double, double) [with void (* F)(sample_t&, sample_t) = DSP::apply_window; sample_t = float]?:
> Compress.h:53:5:   required from ?void CompSaturate<Over, FIRSize>::init(double) [with int Over = 2; int FIRSize = 32]?
> Compress.h:123:6:   required from ?void CompressStub<Channels>::init() [with int Channels = 1]?
> Descriptor.h:150:5:   required from ?static void* Descriptor<T>::_instantiate(const _LADSPA_Descriptor*, ulong) [with T = Compress; LADSPA_Handle = void*; _LADSPA_Descriptor = _LADSPA_Descriptor; ulong = long unsigned int]?
> Descriptor.h:123:5:   required from ?void Descriptor<T>::autogen() [with T = Compress]?
> Compress.cc:157:2:   required from here
> dsp/windows.h:165:3: error: ?finite? was not declared in this scope
> make[1]: *** [Eq.o] Erreur 1
> make[1]: *** Attente des t?ches non termin?es....
> make[1]: *** [Amp.o] Erreur 1
> In file included from dsp/Oversampler.h:35:0,
>                   from Cabinet.h:42,
>                   from Click.cc:158:
> dsp/windows.h: In function ?void DSP::kaiser(sample_t*, int, double, double)?:
> dsp/windows.h:165:17: error: there are no arguments to ?finite? that depend on a template parameter, so a declaration of ?finite? must be available [-fpermissive]
> dsp/windows.h:165:17: note: (if you use ?-fpermissive?, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
> In file included from Cabinet.h:45:0,
>                   from Click.cc:158:
> dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4f::set_eq(v4f_t, v4f_t, v4f_t)?:
> dsp/v4f_BiQuad.h:145:17: error: ?pow10f? was not declared in this scope
> dsp/v4f_BiQuad.h:145:27: error: no matching function for call to ?v4f_map(v4f_t&)?
> dsp/v4f_BiQuad.h:145:27: note: candidate is:
> In file included from Cabinet.h:43:0,
>                   from Click.cc:158:
> dsp/v4f.h:74:7: note: template<float (* fn)(float)> v4f_t v4f_map(v4f_t)
> dsp/v4f.h:74:7: note:   template argument deduction/substitution failed:
> In file included from Cabinet.h:45:0,
>                   from Click.cc:158:
> dsp/v4f_BiQuad.h:145:27: error: template argument 1 is invalid
> dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4fBank<N>::set_eq(v4f_t*, v4f_t*, v4f_t*)?:
> dsp/v4f_BiQuad.h:432:18: error: ?pow10f? was not declared in this scope
> make[1]: *** [Compress.o] Erreur 1
> In file included from dsp/Oversampler.h:35:0,
>                   from Cabinet.h:42,
>                   from Cabinet.cc:29:
> dsp/windows.h: In function ?void DSP::kaiser(sample_t*, int, double, double)?:
> dsp/windows.h:165:17: error: there are no arguments to ?finite? that depend on a template parameter, so a declaration of ?finite? must be available [-fpermissive]
> dsp/windows.h:165:17: note: (if you use ?-fpermissive?, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
> In file included from Cabinet.h:45:0,
>                   from Cabinet.cc:29:
> dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4f::set_eq(v4f_t, v4f_t, v4f_t)?:
> dsp/v4f_BiQuad.h:145:17: error: ?pow10f? was not declared in this scope
> dsp/v4f_BiQuad.h:145:27: error: no matching function for call to ?v4f_map(v4f_t&)?
> dsp/v4f_BiQuad.h:145:27: note: candidate is:
> In file included from Cabinet.h:43:0,
>                   from Cabinet.cc:29:
> dsp/v4f.h:74:7: note: template<float (* fn)(float)> v4f_t v4f_map(v4f_t)
> dsp/v4f.h:74:7: note:   template argument deduction/substitution failed:
> In file included from Cabinet.h:45:0,
>                   from Cabinet.cc:29:
> dsp/v4f_BiQuad.h:145:27: error: template argument 1 is invalid
> dsp/v4f_BiQuad.h: In member function ?void DSP::BiQuad4fBank<N>::set_eq(v4f_t*, v4f_t*, v4f_t*)?:
> dsp/v4f_BiQuad.h:432:18: error: ?pow10f? was not declared in this scope
> make[1]: *** [Click.o] Erreur 1
> In file included from dsp/Oversampler.h:35:0,
>                   from Cabinet.h:42,
>                   from Cabinet.cc:29:
> dsp/windows.h: In instantiation of ?void DSP::kaiser(sample_t*, int, double, double) [with void (* F)(sample_t&, sample_t) = DSP::apply_window; sample_t = float]?:
> dsp/Oversampler.h:73:5:   required from ?void DSP::Oversampler<Oversample, FIRSize>::init(float) [with int Oversample = 4; int FIRSize = 64]?
> Cabinet.cc:251:31:   required from here
> dsp/windows.h:165:3: error: ?finite? was not declared in this scope
> make[1]: *** [Cabinet.o] Erreur 1
> make[1]: quittant le r?pertoire ? /home/thomas/projets/buildroot/output/build/caps-0.9.23 ?
> make: *** [/home/thomas/projets/buildroot/output/build/caps-0.9.23/.stamp_built] Erreur 2
>
> You can use this defconfig to reproduce the problem:
>
> BR2_arm=y
> BR2_TOOLCHAIN_EXTERNAL=y
> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.05-rc1.tar.bz2"
> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14=y
> BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
> BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
> BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
> BR2_TOOLCHAIN_EXTERNAL_CXX=y
> BR2_INIT_NONE=y
> # BR2_PACKAGE_BUSYBOX is not set
> BR2_PACKAGE_CAPS=y
> # BR2_TARGET_ROOTFS_TAR is not set
>
> Thanks,
>
> Thomas
>

Thanks for running the test.  After a quick looks it seems the finite() 
and pow10f() functions are the issue.  I tried a quick change to use 
isfinite() and powf(10,x) instead and that builds.

I'm off on holiday now for a week so I?ll create an updated patch when i 
get back.

Thanks

Martin

  reply	other threads:[~2014-08-06 21:26 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-06  0:02 [Buildroot] [v2 1/2] caps: new package Martin Bark
2014-08-06  0:02 ` [Buildroot] [v2 2/2] alsaequal: " Martin Bark
2014-08-06 20:14 ` [Buildroot] [v2 1/2] caps: " Thomas Petazzoni
2014-08-06 21:26   ` Martin Bark [this message]
2015-01-02 18:23     ` Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53E29D7E.4020906@barkynet.com \
    --to=martin@barkynet.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox