When prelinking, I get tons of messages like prelink: /usr/kde/3.1/bin/kdict: Cannot prelink against non-PIC shared library /usr/X11R6/lib/libGL.so.1 prelink: /usr/kde/3.1/bin/klickety: Cannot prelink against non-PIC shared library /usr/X11R6/lib/libGL.so.1 prelink: /usr/kde/3.2/bin/kuickshow: Cannot prelink against non-PIC shared library /usr/X11R6/lib/libGL.so.1 I am using nvidia-glx, perhaps that is part of the problem? I am not sure if that file belongs to nvidia-glx as qpkg -f does not report anything :-( ~>emerge search nvidia-glx Searching... [ Results for search key : nvidia-glx ] [ Applications found : 1 ] * media-video/nvidia-glx Latest version available: 1.0.4496 Latest version installed: 1.0.5336-r1 Size of downloaded files: 5,005 kB Homepage: http://www.nvidia.com/ Description: XFree86 GLX libraries for the NVIDIA's X driver License: NVIDIA ~>emerge search xfree Searching... [ Results for search key : xfree ] [ Applications found : 2 ] * x11-base/xfree Latest version available: 4.3.0-r5 Latest version installed: 4.3.0-r5 Size of downloaded files: 71,130 kB Homepage: http://www.xfree.org Description: Xfree86: famous and free X server License: X11 MSttfEULA * x11-base/xfree-drm Latest version available: 4.3.0-r7 Latest version installed: [ Not Installed ] Size of downloaded files: 1,018 kB Homepage: http://dri.sf.net Description: XFree86 Kernel DRM modules License: X11 Reproducible: Always Steps to Reproduce: 1. prelink -afmR 2. 3. ~>emerge info Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.4.23) ================================================================= System uname: 2.4.23 i686 Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz Gentoo Base System version 1.4.3.13 Autoconf: sys-devel/autoconf-2.58 Automake: sys-devel/automake-1.7.7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -fprefetch-loop-arrays -falign-functions=4" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -fprefetch-loop-arrays -falign-functions=4" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://trumpetti.atm.tut.fi/gentoo/ http://gentoo.linux.no/ ftp://gentoo.linux.no/pub/gentoo/ ftp://ftp.uninett.no/pub/linux/Gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X Xaw3d aalib acpi arts avi berkdb cdr crypt cups dga directfb doc dvd emacs encode esd foomaticdb gdbm gif gpm gtk gtk2 imap imlib java jpeg kde libg++ libwww mad maildir mbox mikmod motif mozilla mpeg mule ncurses nls oggvorbis opengl oss pam pcmcia pdflib perl png pnp ppds python qt quicktime readline sdl slang spell ssl svga tcltk tcpd tetex tiff truetype trusted usb wxwindows x86 xml2 xmms xv zlib"
When you did opengl-update nvidia, it belongs to nvidia-glx, otherwise to the X server. obj /usr/lib/opengl/nvidia/lib/libGL.so.1.0.5336 8f8a7a5ca6b64427bbc68ff82efb4f34 1076750353 sym /usr/lib/opengl/nvidia/lib/libGL.so -> libGL.so.1.0.5336 1076750353 obj /usr/lib/opengl/nvidia/lib/libGL.la bb5da38d0519da9f22acb4faf99d2308 1076750353 sym /usr/lib/opengl/nvidia/lib/libGL.so.1 -> libGL.so.1.0.5336 1076750353
Thanks. But I _did_ do "opengl-update nvidia" before running prelink, and I still get errors about /usr/X11R6/lib/libGL.so.1, not /usr/lib/opengl/nvidia/lib/libGL.so . Hmm, perhaps it is a softlink? I thought I checked that, but I'll better check again when I am back home. If it is nvidia's library that isn't compiled with -fPIC; should I complain directly to them or let it go through gentoo's bugzilla? Best regards Jakob
Yes, it is a softlink to a softlink to the nvidia library. So either they are to blame for not compiling with -fPIC, or the ebuild compiles the wrapper without -fPIC. In the former case, could the relevant Gentoo developer perhaps complain to nvidia, that will probably carry far more weight than if I do. Until then, all programs with GL will take a bit longer to start .... I can live with that. Jakob
nvidia doesnt use PIC