Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 374853 - app-admin/eselect-opengl-1.2.2 prevents mesa from building on a fresh install (include file GL/glxproto.h is missing)
Summary: app-admin/eselect-opengl-1.2.2 prevents mesa from building on a fresh install...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-11 15:00 UTC by Kfir Lavi
Modified: 2011-07-13 15:04 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (info,4.43 KB, text/plain)
2011-07-11 15:00 UTC, Kfir Lavi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kfir Lavi 2011-07-11 15:00:08 UTC
I'm compiling a fresh AMD64 system. 
mesa has a problem finding GL/glxproto.h

To solve the problem for now, I just ran this command:
for i in /usr/lib64/opengl/xorg-x11/include/* ; do ln -s $i /usr/include/GL/$(basename $i) ; done

It creates links to the original files that are located where mesa installation does not know. 

Regards,
Kfir

Reproducible: Always
Comment 1 Kfir Lavi 2011-07-11 15:00:57 UTC
Created attachment 279779 [details]
emerge --info
Comment 2 Mike Gilbert gentoo-dev 2011-07-12 00:57:01 UTC
Can you post a full build log please?
Comment 3 Kfir Lavi 2011-07-12 17:52:54 UTC
root@thedude GL # equery b GL
 * Searching for GL ... 
media-libs/freeglut-2.6.0 (/usr/include/GL)
media-libs/mesa-7.11_rc1-r1 (/usr/include/GL)
x11-proto/glproto-1.4.14 (/usr/include/GL)
root@thedude GL # equery files freeglut | grep include
/usr/include
/usr/include/GL
/usr/include/GL/freeglut.h
/usr/include/GL/freeglut_ext.h
/usr/include/GL/freeglut_std.h
/usr/include/GL/glut.h
root@thedude GL # equery files glproto | grep include
/usr/include
/usr/include/GL
/usr/include/GL/glxint.h
/usr/include/GL/internal
/usr/include/GL/internal/glcore.h
/usr/lib64/opengl/xorg-x11/include
/usr/lib64/opengl/xorg-x11/include/glxmd.h
/usr/lib64/opengl/xorg-x11/include/glxproto.h
/usr/lib64/opengl/xorg-x11/include/glxtokens.h
root@thedude GL # equery files mesa | grep include
/usr/include
/usr/include/EGL
/usr/include/EGL/egl.h
/usr/include/EGL/eglext.h
/usr/include/EGL/eglplatform.h
/usr/include/GL
/usr/include/GL/gl_mangle.h
/usr/include/GL/glfbdev.h
/usr/include/GL/glu.h
/usr/include/GL/glu_mangle.h
/usr/include/GL/glx_mangle.h
/usr/include/GL/internal
/usr/include/GL/internal/dri_interface.h
/usr/include/GL/mesa_wgl.h
/usr/include/GL/osmesa.h
/usr/include/GL/vms_x_fix.h
/usr/include/GL/wglext.h
/usr/include/GL/wmesa.h
/usr/include/KHR
/usr/include/KHR/khrplatform.h
/usr/include/gbm.h
/usr/lib64/opengl/xorg-x11/include
/usr/lib64/opengl/xorg-x11/include/gl.h
/usr/lib64/opengl/xorg-x11/include/glext.h
/usr/lib64/opengl/xorg-x11/include/glx.h
/usr/lib64/opengl/xorg-x11/include/glxext.h
root@thedude GL # 


As you can see, glproto installs /usr/lib64/opengl/xorg-x11/include/glxproto.h without a link to /usr/include/GL/...

Seems to me that the mesa CFLAGS should contain also -I/usr/lib64/opengl/xorg-x11/include

Regards,
Kfir
Comment 4 Mike Gilbert gentoo-dev 2011-07-13 02:57:27 UTC
Try eselect opengl set xorg-x11.
Comment 5 Kfir Lavi 2011-07-13 08:33:03 UTC
thedude kfir # eselect opengl list
Available OpenGL implementations:
  [1]   xorg-x11 *

So if by default xorg-x11 is chosen, then this problem should not occur. 

I did a world update, so it is possible I didn't read or choose some eselect features, but still as there is just one OpenGL in the eselect, it doesn't seem likely that this was the problem. 

Regards,
Kfir
Comment 6 Pacho Ramos gentoo-dev 2011-07-13 10:47:21 UTC
Is it working for you then after running eselect?
Comment 7 Rémi Cardona (RETIRED) gentoo-dev 2011-07-13 11:44:39 UTC
Just had that bug this morning. Will try to take a look at it unless someone beats me to it.

Thanks
Comment 8 Rémi Cardona (RETIRED) gentoo-dev 2011-07-13 11:46:46 UTC
(In reply to comment #6)
> Is it working for you then after running eselect?

FTR, "eselect opengl set" refuse to work if mesa isn't properly installed (it can't find libGL.so and other libs).
Comment 9 Rémi Cardona (RETIRED) gentoo-dev 2011-07-13 11:55:34 UTC
(In reply to comment #8)
> FTR, "eselect opengl set" refuse to work if mesa isn't properly installed (it
> can't find libGL.so and other libs).

And that's the problem: x11-proto/glproto's postinst silently fails...

>>> Installing (1 of 1) x11-proto/glproto-1.4.14
!!! Error: The xorg-x11 OpenGL implementation doesn't seem to provide
!!! Error: libGL.so file. This might be an effect of breakage introduced
!!! Error: by a prioprietary driver installer. Please re-merge the package
!!! Error: providing your OpenGL implementation.
!!! Error: Selected OpenGL implementation incomplete.
exiting
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.
[...]
Comment 10 Rémi Cardona (RETIRED) gentoo-dev 2011-07-13 12:32:17 UTC
http://sources.gentoo.org/cgi-bin/viewvc.cgi/eselect/trunk/extern/modules/opengl.eselect?r1=803&r2=806

That's what breaks the build. I just commented the "die" at the end of the patch above, ran 'eselect opengl set xorg-x11' and mesa built just fine.

Maybe eselect-opengl needs a --ignore-missing-libgl flag for glproto to work properly?
Comment 11 Chí-Thanh Christopher Nguyễn gentoo-dev 2011-07-13 15:04:38 UTC
Fixed in eselect-opengl-1.2.3