On 07/04/2013 01:02 PM, Mykyta Iziumtsev wrote: > > I'm currently intensively working with libmad, and incidentally came across > libmad build instructions in BLFS/CLFS. There is a problem with x86-64 > compilation which is not properly addressed. > > libmad -- is (considerably) old project (last commit around year 2004). So, > configure.ac grew old, and don't support x86-64. As a result, if you run > ./configure on x86-64 system -- it will complete without errors, but then > compilation will fail with gcc complaining about "-fforce-mem". This is > because ./configure incorrectly "guesses" target triplet. > > In BLFS this issue is not addressed at all (if I get it correctly), and in > CLFS issue is addresses, but incorrectly. The later uses straight approach > -- remove "-fforce-mem". That will make libmad compile -- but at the > expense of significant quality degradation. > > > The proper fix is to update configure.ac (and configure.in, of course, by > running autoconf). This patch is "elaborated" from Ubuntu package: > > diff --git a/configure.ac b/configure.ac > index 0541425..c7151b6 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -294,6 +230,7 @@ if test -z "$FPM" && test "$GCC" = yes > then > case "$host" in > i?86-*) FPM="INTEL" ;; > + x86_64*) FPM="64BIT" ;; > arm*-*) FPM="ARM" ;; > mips*-*) FPM="MIPS" ;; > sparc*-*) FPM="SPARC" ;;
The compilaton still fails after autoconf && ./configure if you don't remove -fforce-mem. -- Igor Živković http://www.slashtime.net/ -- http://linuxfromscratch.org/mailman/listinfo/blfs-support FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
