liba52 make fail//xmms compile

b-vol lux-integ at btconnect.com
Fri Dec 19 15:16:23 PST 2008


On Friday 19 December 2008 02:28:08 pm Ken Moffat wrote:
> On Fri, Dec 19, 2008 at 01:28:19PM +0200, Lauri Kasanen wrote:
> > Hello
> >
> > Using static libraries does not prevent linking them, it just might be
> > more complicated. However, for the original problem, build requiring
> > -fPIC, you can just force it by adding that flag to your CFLAGS and
> > CXXFLAGS before running configure. That has worked for me several times
> > (on a pure64 bit CLFS build too).
> >
> > Lauri
>
>  Yes, that is the general way to force it.  I have the following in
> my current scripts (for x86_64), there used to be a few more but the
> upstreams have caught up with the platform.
>
> libmng :
> if [ $ARCH = x86_64 ]; then
>         sed -e 's%-O3%-O3 -fPIC%' \
>         makefiles/makefile.linux >Makefile
> else
>         cp makefiles/makefile.linux Makefile
> fi
>
> gpl-ghostscript (this is from cblfs) :
> sed -i "s/CFLAGS='/&-fPIC /g" src/unix-dll.mak
>
> for liba52, which started this, I had the following in the configure
> (but I've commented out the package, I decided I didn't need it)
> CFLAGS="$CFLAGS -fPIC"
>
> for ffmpeg (the old snapshot still in BLFS)
> OPTFLAGS="OPTFLAGS=-fPIC"
> (I think this is not needed with recent snapshots).
>
>  My view of static libraries is that most of us need to avoid them,
> and failing that, we need to know when they have been used so that
> we can keep track of what to rebuild after a vulnerability becomes
> known.  I admit I haven't yet applied that to the base LFS/clfs
> systems (did a bit in my last LFS, identified that module-init-tools
> needs static libz - not really a surprise).  If in doubt
> (particularly, mozilla products and tcl) I rename the static libs
> to filename.a.hidden so that if I later need them I can temporarily
> restore them to the original name.  I also do that for static libs
> that I can't otherwise prevent (compare fedora - they do the DESTDIR
> install, then remove them).  For all my desktop packages I attempt
> to build without static libs.
>
>  Getting rid of static libs also saves some space.  Application
> hackers are, of course, free to build and use them where it makes
> sense.
>
> ĸen
> --
> das eine Mal als Tragödie, das andere Mal als Farce

thanks  before I saw your email I managed to compile with share libraries 
using CFLAGS="$BUILD64 -fPIC" .  I have now tried with 
CFLAGS="$CFLAGS -fPIC".  
Both work.  Which is better?

I now have a peoblm  with xmms install  (see below)

#####xmms-1.2.11
lib/libXxf86vm.so ../libxmms/.libs/libxmms.so -L/usr/X11R7.4/lib -luuid -lpthread -ldl -lm  -Wl,--rpath -Wl,/opt/gtk1210/lib
../libxmms/.libs/libxmms.so: undefined reference to `libiconv'
../libxmms/.libs/libxmms.so: undefined reference to `libiconv_close'
../libxmms/.libs/libxmms.so: undefined reference to `libiconv_open'
collect2: ld returned 1 exit status
make[4]: *** [xmms] Error 1

suggestions welcomed

lux integ
-- 

###################################
“Common sense teaches that booksellers should not speculate in hops, 
or bankers in turpentine; that railways should not be promoted by maiden 
ladies, or canals by beneficed clergymen ....”
Walter Bagehot-economist: 1826-1877 



More information about the blfs-support mailing list