eglInitialize failed

See the thread linked below, and in particular that post.

In order to:

  • create a GPU-accelerated EGL context
  • via the NVIDIA graphics driver on Linux
  • using the display eglGetDisplay( EGL_DEFAULT_DISPLAY ) (instead of XOpenDisplay())

the Linux usermode driver/libs need to be able to open the NVIDIA Linux driver’s kernel special files. Namely:

  • /dev/nvidia0
  • /dev/nvidiactl
  • /dev/nvidia-modeset
  • /dev/dri/card0 , and
  • /dev/dri/renderD128

If your system is setup similarly to the one here:

> ls -l /dev/nvidia0 /dev/nvidiactl /dev/nvidia-modeset /dev/dri/card0 /dev/dri/renderD128
crw-rw----+ 1 root video 226,   0 Aug  5 17:34 /dev/dri/card0
crw-rw----+ 1 root video 226, 128 Aug  5 17:34 /dev/dri/renderD128
crw-rw----+ 1 root video 195, 254 Aug  5 17:34 /dev/nvidia-modeset
crw-rw----+ 1 root video 195,   0 Aug  5 17:34 /dev/nvidia0
crw-rw----+ 1 root video 195, 255 Aug  5 17:34 /dev/nvidiactl

that just involves adding your username to the video group in the /etc/group file. You may then need to log out and back in to activate this change.