Been working on this for two weeks.
The topline is that I use LWGJL 2.9.3 in an application for taking static snapshots of 3d model images. I ported it from Windows to Linux a little less than a year ago and it worked. Upgrading to the latest verson of Linux it doesn't work. Upgrading libraries only (apt upgrade instead of apt dist-upgrade) also breaks. Specifically, the snapshot appears as a pure black image instead of a shaded 3d rendering with a white background.
Details:
-This is true in a headless and a non-headless environment. (Non-headless uses Xvfb in Ubuntu and TigerVNC in RHEL)
-This is true in Ubuntu and in Red Hat.
-On Ubuntu, the debug output from the non-functional version is as follows:
Could not locate symbol glXSwapIntervalEXT
Could not locate symbol glXEnumerateVideoDevicesNV
Could not locate symbol glXBindVideoCaptureDeviceNV
[LWJGL] Xrandr extension version 1.5
[LWJGL] Using Xrandr for display mode switching
[LWJGL] XF86VidMode extension version 2.2
[LWJGL] Initial mode: 1920 x 984 x 24 @60Hz
[LWJGL] Pixel format info: r = 8, g = 8, b = 8, a = 0, depth = 24, stencil = 0, sample buffers = 0, samples = 0
[LWJGL] MemoryUtil Accessor: AccessorUnsafe
[LWJGL] XF86VidMode extension version 2.2
-The debug from the functional version is as follows:
Could not locate symbol glXSwapIntervalEXT
Could not locate symbol glXEnumerateVideoDevicesNV
Could not locate symbol glXBindVideoCaptureDeviceNV
[LWJGL] Xrandr extension version 1.5
[LWJGL] Using Xrandr for display mode switching
[LWJGL] XF86VidMode extension version 2.2
[LWJGL] Initial mode: 1333 x 722 x 24 @60Hz
[LWJGL] Pixel format info: r = 8, g = 8, b = 8, a = 0, depth = 24, stencil = 0, sample buffers = 0, samples = 0
[LWJGL] MemoryUtil Accessor: AccessorUnsafe
But after that output, on the WORKING version, I get an error if and only if I debug.
org.lwjgl.opengl.OpenGLException: Invalid enum (1280)
at org.lwjgl.opengl.Util.checkGLError(Util.java:59)
at org.lwjgl.opengl.DrawableGL.checkGLError(DrawableGL.java:82)
at org.lwjgl.opengl.Display.swapBuffers(Display.java:617)
at org.lwjgl.opengl.Display.update(Display.java:646)
at org.lwjgl.opengl.Display.update(Display.java:628)
at [my package].fileutils.FileViewer.takeSnapshot(FileViewer.java:[line])
This is all very much over my head (no, I'm not the original developer of the LWJGL-using app) and I would love very much if one of you fine people out there could help me figure this out.
FTR, the black square is a totally black square. There is not a single pixel in one corner that is non-black.
Thanks....