My understanding is that libEGL.so.1 is GLVND-based, where libEGL.375.39 is
non-GLVND. I think both of them are at some level wrappers around
libEGL_nvidia.so, which is much larger than either of the libEGL.so and I guess
contains the meat of Nvidia's EGL implementation.
The GLVND one looks up the EGL implementations present by inspecting the files
in /usr/share/glvnd/egl_vendor.d/. A similar mechanism declares Vulkan
implementations with JSON files in /usr/share/vulkan/icd.d/, and, sure enough,
the nvidia-375 package places nvidia_icd.json in /usr/share/vulkan/icd.d/.
However, nvidia-375 doesn't put anything in /usr/share/glvnd/egl_vendor.d/, so
libEGL.so.1 doesn't find out about libEGL_nvidia.so and can't forward to it.
If I create /usr/share/glvnd/egl_vendor.d/ and copy in 10_nvidia.json from
Nvidia's runfile installer, my test case passes.
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to nvidia-graphics-drivers-367 in Ubuntu.
https://bugs.launchpad.net/bugs/1674677
Title:
eglGetDisplay(EGL_DEFAULT_DISPLAY) returns EGL_NO_DISPLAY
Status in nvidia-graphics-drivers-367 package in Ubuntu:
Confirmed
Status in nvidia-graphics-drivers-375 package in Ubuntu:
Confirmed
Bug description:
I am using EGL to obtain offscreen rendering contexts, but upgrading
this package today broke my application. I have written a small test
case, that I expect to print "PASS":
```
#include <EGL/egl.h>
#include <iostream>
int main(int argc, char **argv) {
EGLDisplay eglDpy = eglGetDisplay(EGL_DEFAULT_DISPLAY);
std::cout << ((eglDpy == EGL_NO_DISPLAY) ? "FAIL" : "PASS") << std::endl;
}
```
Build with e.g. `g++ egl_test.cpp -lEGL`. Using nvidia-375
(375.39-0ubuntu0.16.04.1), this test program will print "FAIL",
because `eglGetDisplay(EGL_DEFAULT_DISPLAY)` returns `EGL_NO_DISPLAY`.
If I install the 375.39 driver using Nvidia's installer, the test
passes, so I think it is not an upstream issue.
ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: nvidia-375 375.39-0ubuntu0.16.04.1
ProcVersionSignature: Ubuntu 4.4.0-67.88-generic 4.4.49
Uname: Linux 4.4.0-67-generic x86_64
NonfreeKernelModules: nvidia_uvm nvidia_drm nvidia_modeset nvidia
ApportVersion: 2.20.1-0ubuntu2.5
Architecture: amd64
CurrentDesktop: MATE
Date: Tue Mar 21 12:41:31 2017
EcryptfsInUse: Yes
InstallationDate: Installed on 2016-10-11 (160 days ago)
InstallationMedia: Xubuntu 16.04.1 LTS "Xenial Xerus" - Release amd64
(20160719)
SourcePackage: nvidia-graphics-drivers-375
UpgradeStatus: No upgrade log present (probably fresh install)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-367/+bug/1674677/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp