# Error de compilacion de mesa-9 con gallium

## agdg

Al compilar mesa-9, con la use gallium activa, me da el siguiente error:

```
In file included from xorg_driver.c:42:0:

/usr/include/xorg/edid.h:619:6: aviso: la declaración no declara nada

xorg_dri2.c:38:18: error fatal: dri2.h: No existe el fichero o el directorio

compilación terminada.

gmake[4]: *** [xorg_dri2.o] Error 1

gmake[4]: *** Se espera a que terminen otras tareas....

In file included from /usr/include/xorg/xf86Crtc.h:26:0,

                 from xorg_tracker.h:42,

                 from xorg_exa.h:4,

                 from xorg_renderer.c:1:

/usr/include/xorg/edid.h:619:6: aviso: la declaración no declara nada

gmake[4]: *** wait: No hay ningún proceso hijo.  Alto.

gmake[3]: *** [subdirs] Error 1

```

Recalcar que el problema surge al compilar con la use gallium activa. Si compilo desactivando esta USE, todo va ok. De hecho actualmente uso mesa-9 sin esta use, aunque con un parche de aupa: he editado a mano el ebuild para eliminar la dependencia de g3dvl de gallium y ha compilado sin problemas con USE="vdpau g3dvl -gallium"

El tema esta en que tengo una tarjeta NVIDIA, y por supuesto quiero activar el soporte vdpau. La use vdpau depende de la use g3dvl, que a su vez depende de la use gallium. Por tanto, 'no puedo compilar el soporte vdpau' sin activar la use gallium.

He buscado por los foros y no he encontrado nadie con el mismo problema, por ello entiendo que es culpa mía y no de un bug. Hasta ahora el sistema es estable y no he tenido problemas, sin embargo no creo que sea buena idea usar esta táctica por ello busco como solucionar el problema y no parchear-lo como yo he hecho.

Os dejo algunos datos por si alguien me puede indicar porque ocurre esto.

```
agd-desktop agd # emerge --info mesa

Portage 2.1.11.31 (default/linux/amd64/10.0/desktop/gnome, gcc-4.5.4, glibc-2.15-r3, 3.5.7-gentoo-agd x86_64)

bla 

bla

bla

media-libs/mesa-9.0 was built with the following:

USE="egl g3dvl (multilib) nptl shared-glapi vdpau xorg -bindist -classic -debug -gallium -gbm -gles1 -gles2 -llvm -openvg -osmesa -pax_kernel -pic -r600-llvm-compiler (-selinux) (-wayland) -xa -xvmc" VIDEO_CARDS="-i915 -i965 -intel -nouveau -r100 -r200 -r300 -r600 -radeon -radeonsi -vmware"

```

 The complete build log is located at '/tmp/portage/media-libs/mesa-9.0/temp/build.log'.

http://pastebin.com/6dwfiFmK

----------

## gringo

igual digo una tonteria o no he entendido el problema, pero por lo que has posteado entiendo que usas el binario de nvidia, no ?

Si es asi, creo que te rompes la cabeza para nada, el driver de nvidia NO hace uso de mesa, viene con su propia libGL.so.

De ahi que exista eselect opengl.

saluetes

----------

## agdg

gringo es al revés, es decir, lo que quiero es que mesa use las ventajas que ofrece el binario de nvidia (use=vdpau). Y ahí es donde tengo el problema, activar vdpau implica activar otras flags, y si las activo da error en la compilación.

Entiendo que si existe la use vdpau en mesa, es para poder hacer uso de las ventajas que ofrece el binario de nvidia a través de su API vpdau para descargar la CPU de la decodificación y postprocesado del vídeo.

----------

## gringo

 *Quote:*   

> Entiendo que si existe la use vdpau en mesa, es para poder hacer uso de las ventajas que ofrece el binario de nvidia a través de su API vpdau para descargar la CPU de la decodificación y postprocesado del vídeo.

 

ojalá me equivoque pero que yo sepa para poder utilizar vdpau de mesa tienes que usar el driver libre, de ahi que vdpau de mesa dependa de gallium, porque depende de nouveau.

saluetes

----------

## agdg

Tienes razón gringo.

----------

