O Mesa EGL não está funcionando, nem mesmo inicializando

2

Quase uma semana agora, e não consigo entender o que está errado! Quaisquer ponteiros seriam apreciados (trocadilho intencional)!

Ubuntu 12.04 x86_64
Mesa-8.0.4

./configure --enable-64-bit --enable-pic -enable-opengl --enable-gles2 --enable-xorg --enable-egl --enable-glu --with-x

(Também tentei com o pacote apt-get do Mesa)

ls /usr/local/lib | grep EGL  
libEGL.so@  
libEGL.so.1@  
libEGL.so.1.0*  

Ao executar o código do tutorial simples

display = eglGetDisplay(EGL_DEFAULT_DISPLAY);  
EGLBoolean err = eglInitialize(display, NULL, NULL);

a inicialização falha e outras funções retornam EGL_NOT_INITIALIZED .

    
por Vorac 19.11.2012 / 17:44

1 resposta

1

Em uma área de trabalho X, você não pode usar EGL_DEFAULT_DISPLAY . Você deve passar para eglGetDisplay() um ponteiro para um Xlib Display válido. Por exemplo:

EGLBoolean ok;

Display *xlib_dpy = XOpenDisplay(NULL);
if (!xlib_dpy)
  return;

EGLDisplay egl_dpy = eglGetDisplay(xlib_dpy);
if (!egl_dpy)
  return;

int major;
int minor;
ok = eglInitialize(egl_dpy, &major, &minor);
if (!ok)
  return;

if (10 * major + minor != 14) {
  /* EGL is too old; */
  return;
}
    
por 22.01.2013 / 06:49

Tags