emerge media-libs/gle (-3.0.1-r2) fails with checking for glGetError in -lGL... no configure: error: Cannot find required GL library Reproducible: Always Steps to Reproduce: 1. emerge media-libs/gle Actual Results: Build fails. Expected Results: Build succeeds. Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r6 i686) ================================================================= System uname: 2.6.11-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.5 [2.3.5 (#1, May 9 2005, 20:51:42)] dev-lang/python: 2.3.5 sys-apps/sandbox: [Not Present] sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.5, 1.8.5-r3, 1.6.3, 1.7.9-r1, 1.4_p6, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r7 sys-devel/libtool: 1.5.16 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox sfperms strict" GENTOO_MIRRORS="ftp://mirror.iawnet.sandia.gov/pub/gentoo/ ftp://gentoo.mirrors.pair.com/ ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/" LC_ALL="POSIX" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 X Xaw3d aalib alsa apm arts avi berkdb bitmap-fonts cdparanoia cdr crypt cscope cups curl divx4linux emboss encode esd fam flac foomaticdb fortran gdbm gif gimpprint gnome gpm gtk gtk2 imagemagick imlib ipv6 java jpeg ldap libg++ libwww mad mikmod mmx mmxext motif mozilla mp3 mpeg ncurses nls ogg oggvorbis opengl oss pam pdflib perl png python quicktime readline real sdl spell sse sse2 ssl svg svga tcltk tcpd theora threads tiff truetype truetype-fonts type1-fonts vorbis xinerama xml2 xmms xprint xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Created attachment 58694 [details] config log !!! Please attach the config.log to your bug report: !!! /var/tmp/portage/gle-3.0.1-r2/work/gle-3.0.1/config.log
run `opengl-update xorg-x11` and try again.
Huh, I thought I had already done that. But I did it, and it still fails. I looked in the config.log and the same error occurred. configure:3381: checking for glGetError in -lGL configure:3400: gcc -o conftest -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wall conftest.c -lGL -lSM -lICE -lX11 -lm 1>&5 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/../../../libGL.a(glthread.o)(.text+0x1c): In function `_glthread_InitTSD': : undefined reference to `pthread_key_create' /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/../../../libGL.a(glthread.o)(.text+0x6b): In function `_glthread_GetTSD': : undefined reference to `pthread_key_create' /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/../../../libGL.a(glthread.o)(.text+0x80): In function `_glthread_GetTSD': : undefined reference to `pthread_getspecific' /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/../../../libGL.a(glthread.o)(.text+0xcc): In function `_glthread_SetTSD': : undefined reference to `pthread_key_create' /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/../../../libGL.a(glthread.o)(.text+0xf1): In function `_glthread_SetTSD': : undefined reference to `pthread_setspecific' collect2: ld returned 1 exit status configure: failed program was: #line 3389 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char glGetError(); int main() { glGetError() ; return 0; }
Try adding -lpthread to the compile line
Yup. I went into /var/tmp/portage/gle-3.0.1-r2/work/gle-3.0.1, created the testcase as joshtest.c. Compiles: gcc -o conftest -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wall joshtest.c -lGL -lSM -lICE -lX11 -lm -lpthread Does not compile: gcc -o conftest -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wall joshtest.c -lGL -lSM -lICE -lX11 -lm
Josh: what's your GL provider? Is it xorg, nvidia, ati?
% opengl-update --get-implementation xorg-x11
Hmm I can't reproduce here. Could you please do the following: 1) Post your `emerge -pv xorg-x11` 2) Emerge 'gentoolkit' if you haven't already and run `revdep-rebuild`, then try emerging again.
% emerge -pv xorg-x11 [ebuild R ] x11-base/xorg-x11-6.8.2-r1 -3dfx -3dnow +bitmap-fonts -cjk -debug -dlloader -dmx -doc -font-server -hardened -insecure-drivers +ipv6 -minimal +mmx +nls +opengl +pam -sdk +sse -static +truetype-fonts +type1-fonts (-uclibc) +xprint* +xv 0 kB % revdep-rebuild Checking reverse dependencies... Packages containing binaries and libraries broken by any package update, will be recompiled. Collecting system binaries and libraries... done. (/root/.revdep-rebuild.1_files) Collecting complete LD_LIBRARY_PATH... done. (/root/.revdep-rebuild.2_ldpath) Checking dynamic linking consistency... done. (/root/.revdep-rebuild.3_rebuild) Assigning files to ebuilds... Nothing to rebuild Evaluating package order... done. (/root/.revdep-rebuild.5_order) Dynamic linking on your system is consistent... All done.
Hmm, I see a use flag that hasn't been implemented...you may want to run `emerge -uavD --newuse world` on your system. I'll take a closer look at it this weekend, thank you for being so prompt with your information :)
Had the same problem here, however, running 'opengl-update xorg-x11' solved it.
After re-emerging xorg, gle builds successfully. The mystery remains why opengl was busted before. Oh well.