![Mesa EGL이 작동하지 않고 초기화되지도 않았습니다.](https://linux55.com/image/27202/Mesa%20EGL%EC%9D%B4%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20%EC%B4%88%EA%B8%B0%ED%99%94%EB%90%98%EC%A7%80%EB%8F%84%20%EC%95%8A%EC%95%98%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
이제 거의 일주일이 지났는데 무슨 문제인지 모르겠어요! 어떤 조언이라도 대단히 감사하겠습니다(말장난 의도)!
우분투 12.04 x86_64
메사-8.0.4
./configure --enable-64-bit --enable-pic -enable-opengl --enable-gles2 --enable-xorg --enable-egl --enable-glu --with-x
(또한 Mesa의 apt-get 패키지를 사용해 보았습니다)
ls /usr/local/lib | grep EGL
libEGL.so@
libEGL.so.1@
libEGL.so.1.0*
display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
EGLBoolean err = eglInitialize(display, NULL, NULL);
초기화가 실패하고 추가 기능이 반환됩니다 EGL_NOT_INITIALIZED
.
답변1
X 데스크탑에서는 이것을 사용할 수 없습니다 . 유효한 Xlib에 대한 포인터를 EGL_DEFAULT_DISPLAY
전달해야 합니다 . 예를 들어:eglGetDisplay()
Display
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;
}