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&v…
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).
Regards
jonathan