It seems this ebuild fails to set up a symlink from /usr/lib64/opengl/xorg-x11/lib/libEGL.so.1.0 to /usr/lib64/libEGL.so.1 (and maybe others). First noticed this when audacious failed to run, and showed a missing library. This was not caught by revdep-rebuild. Reproducible: Always Steps to Reproduce: 1. emerge mesa with 'egl' use flag. 2. run audacious 3. -> missing library libEGL.so.1 When I manually created the missing link, audacious ran fine: cd /usr/lib64; ln -s opengl/xorg-x11/lib/libEGL.so.1.0 libEGL.so.1
eselect-opengl should manage this symlink. If you remove /usr/lib64/libEGL.so.1 and run "eselect opengl set xorg-x11", does the symlink get created?
In my ~x86 box after emerging media-libs/mesa-7.11_rc1 x11-libs/cairo-1.10.2-r1 failed to compile with the error: ld: cannot find -lEGL I followed your suggestion and set: "eselect opengl set xorg-x11" (it was set to nvidia) After that cairo compiled ok. I hope this info is useful.
But if I use nvidia, what I can do?
I have a similar problem. I upgraded mesa to 7.11_rc1 and preserved-libs told me that a bunch of packages needs to be rebuilt (including mesa itself...) due to missing libEGL.so.1: !!! existing preserved libs: >>> package: media-libs/mesa-7.11_rc1 * - /usr/lib64/libEGL.so.1 * - /usr/lib64/libEGL.so.1.0 * used by /usr/lib64/ImageMagick-6.6.8/modules-Q16/coders/svg.so (media-gfx/imagemagick-6.6.8.5) * used by /usr/lib64/egl/egl_gallium.so (media-libs/mesa-7.11_rc1) * used by /usr/lib64/gtkpod/libcore_prefs.so (app-pda/gtkpod-2.0.2) * used by 78 other files After running 'emerge preserved-rebuild' most packages fail with 'cannot find -lEGL'. Running 'eselect opengl set nvidia' doesn't help at all.
The proprietary drivers don't seem to provide libEGL.so, that is indeed a problem.
I added mesa-7.11_rc1-r1 to the tree which provides the libraries for users of proprietary drivers again. Keeping this bug open for a while so users can find it more easily.
(In reply to comment #3) > But if I use nvidia, what I can do? After compilation go back to nvidia "eselect opengl set nvidia" and everything works.
Marking as FIXED.
*** Bug 375593 has been marked as a duplicate of this bug. ***
Reopening: in mesa-8.0, this bug is back. $ qlist -e media-libs/mesa-8.0 | grep EGL /usr/include/EGL/egl.h /usr/include/EGL/eglext.h /usr/include/EGL/eglmesaext.h /usr/include/EGL/eglplatform.h /usr/lib64/opengl/xorg-x11/lib/libEGL.so /usr/lib64/opengl/xorg-x11/lib/libEGL.so.1 /usr/lib64/opengl/xorg-x11/lib/libEGL.so.1.0
A workaround for nvidia-driver users is to do eselect opengl set xorg-x11 ; eselect opengl set nvidia This will create /usr/lib/libEGL.so* symlinks to mesa-8.0's libEGL while ensuring that /usr/lib/libGL* links to nvidia's libGL.
*** Bug 403065 has been marked as a duplicate of this bug. ***
mesa-8.0 now runs the workaround suggested by tetromino in comment 11.
(In reply to comment #13) > mesa-8.0 now runs the workaround suggested by tetromino in comment 11. Unfortunately that only helps people who emerge the new mesa-8.0 ebuild ... not those who get compile errors from all sorts of random packages. Perhaps -r1 it?
I've been hit by this and didn't realize I had an old ebuild. Please revbump ebuilds when you fix these critical things. WRT: 11 Feb 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> mesa-8.0.ebuild: switch to xorg-x11 and back if necessary, bug #374647 comment 11
I did not think that a revbump was required as the files which the package installs on disk are not changed. Also it affects ~arch users only who are supposed to know what they are doing, and figure out when they need to rebuild which package. Furthermore it only affects proprietary drivers and would have caused needless rebuilds for everyone else. But if there is consensus that a revbump is necessary, that would be ok with me.
This is fixed by multiple following version bumps.