Date: Wed, 3 Mar 2004 22:54:34 +0300 From: Gleb Smirnoff <glebius@cell.sick.ru> To: Alfred Perlstein <alfred@freebsd.org> Cc: current@freebsd.org Subject: Re: fix for libpthread Message-ID: <20040303195434.GA36427@cell.sick.ru> In-Reply-To: <20040303105149.GH56622@elvis.mu.org> References: <20040303061144.GE56622@elvis.mu.org> <404592F5.1060206@freebsd.org> <20040303104657.GG56622@elvis.mu.org> <20040303105149.GH56622@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 03, 2004 at 02:51:49AM -0800, Alfred Perlstein wrote: A> I sort of see what you are saying: A> ~ % ldd `which mplayer` A> /usr/local/bin/mplayer: A> libpng.so.5 => /usr/local/lib/libpng.so.5 (0x2828e000) A> libz.so.2 => /lib/libz.so.2 (0x282b0000) A> libfreetype.so.9 => /usr/local/lib/libfreetype.so.9 (0x282bd000) A> libncurses.so.5 => /lib/libncurses.so.5 (0x28320000) A> libGL.so.1 => /usr/X11R6/lib/libGL.so.1 (0x2835c000) A> libXv.so.1 => /usr/X11R6/lib/libXv.so.1 (0x283c9000) A> libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x283ce000) A> libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x283dd000) A> libpthread.so.1 => /usr/lib/libpthread.so.1 (0x284a5000) A> libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x284c8000) A> libintl.so.6 => /usr/local/lib/libintl.so.6 (0x285b7000) A> libm.so.2 => /lib/libm.so.2 (0x285bf000) A> libc.so.5 => /lib/libc.so.5 (0x285d7000) A> libc_r.so.5 => /usr/lib/libc_r.so.5 (0x286a2000) A> A> I see somehow it got linked against BOTH libpthread and libc_r, A> there has to be a way to prevent that sort of bogus linkage A> from happening. :( Or at least make it work right when it A> does happen... "ldd -a" gives the answer. Important lines are marked. /usr/local/bin/mplayer: libvorbis.so.3 => /usr/local/lib/libvorbis.so.3 (0x28421000) libogg.so.5 => /usr/local/lib/libogg.so.5 (0x28448000) libpng.so.5 => /usr/local/lib/libpng.so.5 (0x2844d000) libz.so.2 => /lib/libz.so.2 (0x28471000) libjpeg.so.9 => /usr/local/lib/libjpeg.so.9 (0x2847f000) libfreetype.so.9 => /usr/local/lib/libfreetype.so.9 (0x2849c000) libncurses.so.5 => /lib/libncurses.so.5 (0x28504000) libungif.so.5 => /usr/local/lib/libungif.so.5 (0x28543000) libfontconfig.so.1 => /usr/X11R6/lib/libfontconfig.so.1 (0x2854b000) libaa.so.1 => /usr/local/lib/libaa.so.1 (0x28572000) libGL.so.1 => /usr/X11R6/lib/libGL.so.1 (0x28589000) libXv.so.1 => /usr/X11R6/lib/libXv.so.1 (0x285f3000) libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x285f8000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) libSDL-1.1.so.5 => /usr/local/lib/libSDL-1.1.so.5 (0x286ca000) libpthread.so.1 => /usr/lib/libpthread.so.1 (0x28720000) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ libvgagl.so.1 => /usr/local/lib/libvgagl.so.1 (0x28744000) libvga.so.1 => /usr/local/lib/libvga.so.1 (0x28752000) libm.so.2 => /lib/libm.so.2 (0x287ac000) libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x287c5000) libintl.so.6 => /usr/local/lib/libintl.so.6 (0x288b3000) libc.so.5 => /lib/libc.so.5 (0x288bc000) /usr/local/lib/libvorbis.so.3: libm.so.2 => /lib/libm.so.2 (0x287ac000) libogg.so.5 => /usr/local/lib/libogg.so.5 (0x28448000) /usr/local/lib/libpng.so.5: libm.so.2 => /lib/libm.so.2 (0x287ac000) libz.so.2 => /lib/libz.so.2 (0x28471000) /usr/local/lib/libfreetype.so.9: libz.so.2 => /lib/libz.so.2 (0x28471000) /usr/local/lib/libungif.so.5: libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) /usr/X11R6/lib/libfontconfig.so.1: libfreetype.so.9 => /usr/local/lib/libfreetype.so.9 (0x2849c000) libz.so.2 => /lib/libz.so.2 (0x28471000) libexpat.so.4 => /usr/local/lib/libexpat.so.4 (0x28995000) /usr/local/lib/libaa.so.1: libncurses.so.5 => /lib/libncurses.so.5 (0x28504000) libm.so.2 => /lib/libm.so.2 (0x287ac000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) /usr/X11R6/lib/libGL.so.1: libc_r.so.5 => /usr/lib/libc_r.so.5 (0x289b4000) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x285f8000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) libc.so.5 => /lib/libc.so.5 (0x288bc000) /usr/X11R6/lib/libXv.so.1: libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x285f8000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) /usr/X11R6/lib/libXext.so.6: libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) /usr/local/lib/libSDL-1.1.so.5: libm.so.2 => /lib/libm.so.2 (0x287ac000) libvgl.so.3 => /usr/lib/libvgl.so.3 (0x289d8000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28606000) libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x285f8000) libusbhid.so.1 => /usr/lib/libusbhid.so.1 (0x289e0000) /usr/local/lib/libvga.so.1: libm.so.2 => /lib/libm.so.2 (0x287ac000) /usr/local/lib/libintl.so.6: libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x287c5000) XFree86 is guilty in my case. Anyone have tried to force libpthread for it via libmap? -- Totus tuus, Glebius. GLEBIUS-RIPN GLEB-RIPE
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040303195434.GA36427>