Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • W weston
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 317
    • Issues 317
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 122
    • Merge requests 122
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • wayland
  • weston
  • Issues
  • #141
Closed
Open
Created Sep 16, 2018 by fyb@fybmain

GLFW3 failed to initialize on Weston 5.0.0

GLFW3 (wayland backend) failed to initialize on Weston 5.0.0 (backend is x11-backend.so) The error code got from the error callback function of GLFW is 65544, the description of which is EGL: Failed to create window surface: ERROR: UNKNOWN EGL ERROR

And I tested one of my demos which was written when I was learning Wayland protocol and EGL to get more information. My program still works on Gnome (wayland backend) now. But on Weston 5.0.0, I find it failed at the following line in my program:

surface = eglCreatePlatformWindowSurface(
	display,		// returned from eglGetPlatformDisplay(EGLenum, void *, const EGLAttrib *)
	_eglConfig, 		// returned from eglChooseConfig(EGLDisplay, const EGLint *, EGLConfig *, EGLint, EGLint *)
	nativeEGLWindow,	// returned from wl_egl_window_create(struct wl_surface *, int, int)
	windowAttrib		// const array of EGLAttrib
);

The eglCreatePlatformWindowSurface just returned EGL_NO_SURFACE and set the error code to 0x3008, which is EGL_BAD_DISPLAY defined in /usr/include/EGL/egl.h. I am sure that the EGL Display has already been initialized with eglInitialize returned EGL_TRUE. According to the EGL specification this is not the correct behavior.

I am willing to help debug but I do not know what to do after tracing into libglfw.so or libEGL.so without debugging symbols in gdb.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking