[LAD] [FFADO-devel] can't build libffado 2.2.1 under gentoo

Jonathan Woithe jwoithe at just42.net
Wed Apr 13 23:48:21 UTC 2016

On Wed, Apr 13, 2016 at 09:33:09PM +0200, Adrian Knoth wrote:
> On 04/13/16 20:27, Nikita Zlobin wrote:
> > Somewhat long time ago (about year) i could install it, but now i have
> > following problems on compilation:
> > - First, it seems, that it now uses more modern language features: the
> >   specified option --std=c99, added by one of ebuild's patch, as well
> >   as without any options (tried to build tarball with) gives long error
> >   list.
> libffado is C++, so --std=c99 is never correct. Please file a bug report
> against your ebuild.

I agree - I don't understand why this was added by an ebuild patch.

> I might be mistaken, but are you compiling a 32bit library on a 64bit
> system? Is that intended to be a cross-compile? I have no idea if
> anybody has ever tried this. Should work in theory, but no guarantees.

I have a vague recollection that someone did something similar to 32-on-64
bit, but that was on a PowerPC system so it's quite different.  It did work
in that environment IIRC.

Based on the output in "http://pastebin.com/hkttBN9X" it does indeed seem
that FFADO is being compiled for 32-bit on a 64-bit multilib system: the
compiler is x86_64-pc-linux-gnu-g++ and "-m32" is specified.  This is
unlikely to be the cause of the errors though, since it only alters the
target object format and the errors are reported at source level.

> > - With compiler flag --std=c++11 compilation continued for relatively
> >   long time, but then failed with following
> >   errors: http://pastebin.com/hkttBN9X
> On Debian, this compiles fine:
> https://buildd.debian.org/status/fetch.php?pkg=libffado&arch=i386&ver=2.2.1-3&stamp=1448933457

Agreed.  Nikita, what is the compiler version in use on the Gentoo system,
as reported by "x86_64-pc-linux-gnu-g++ --version"?

> while this doesn't mean there's nothing wrong with FFADO, I find it more
> likely to be a Gentoo problem, especially due to lack of reports from
> other distros.

I agree.  Then again, if a very new gcc is in use perhaps tightened language
definitions are causing trouble.  Another possibility is that additional
patches are being applied to FFADO by ebuild which are causing the problem.

> And last not least: if you have a DICE device, you might not even need
> FFADO anymore, provided you're running a recent kernel.

FYI FFADO is still required if mixer control functionality is needed
(it is provided by ffado-mixer).


More information about the Linux-audio-dev mailing list