I am having trouble compiling GLSL shader programs on a NUC Mini NUC7i7BNH. glCompileShader yields False for GL_COMPILE_STATUS but glGetShaderInfoLog returns just a single newline, no error messages. Then sometimes glLinkProgram and glValidateProgram accept the shaders anyway, GL_LINK_STATUS and GL_VALIDATE_STATUS are both True. But for some other shaders, glLinkProgram complains "shader not compiled", GL_LINK_STATUS is False, and eventually glGetUniformLocation posts an error, GL_INVALID_OPERATION.
I understand you are having a problem with the GLSL shader since the compilation fails, I apologize for any inconvenience.
Regarding this problem, To better assist you with your request, I will need to check some information about your computer. Please follow these steps:
1. In the keyboard, press WinLogo key + R.
2. In the Run box please type dxdiag and hit Enter.
3. Click on Save All Information (save it in your desktop).
4. Attach to this thread the report.
To attach a file, you must click "Use advanced editor" in the top right and then click the "Attach" option on the bottom right hand the response box.
Thank you for your response,
For a better insight of what the problem could be I would need to know the name of the program(s) that you are using for the compile. Once we have this we will be able to see if we can find a solution for those errors shown.
I have gathered descriptions of how we pass shader programs to OpenGL, and details of GLSL compiler problems with various combinations of # version directives and leading comments, using a selected very simple pair of vertex and fragment shader programs.
In the one combination that does successfully compile and link a shader program, the resulting drawing shows as least three errors which appear differently with each frame.
The description and the sample images are attached.
Thanks for your attention,
Thank you for all of the information,
Regarding the version of OpenGL that requires the compiler, have checked the requirement? If so, please let us know the requirement of OpenGL version.
The application is coded to OpenGL 2.0 or 2.1, with a mixture of fixed-function pipeline and shader program rendering. Definitely Compatability Profile. The GLSL shader programs omit the # version directive, which nominally defaults to '# version 110 compatibility', and I do see a WARNING that # version is missing -- which demonstrates that the InfoLog mechanism for reporting GLSL compiler messages is working. We do use simple shader programs, thus requiring at least OpenGL 2.x, and we do not (yet) use anything requiring OpenGL 3.0 or above.
When run on the NUC Mini, the OpenGL context reports GL_RENDERER = "Intel(R) Iris(R) Plus Graphics 650" and GL_VERSION = "4.2.0 - Build 184.108.40.20677". The Java interface to OpenGL is JOGL2, using GLProfile.getDefault(), which is named GL4bc (bc for backward compatable, i.e., the OpenGL Compatability Profile).
It is unclear which of those addresses your question. If I've missed, please ask again a little more carefully.
Thank you for your response,
That is correct, It answers my question and my apologies for not being clear with the question itself.
Right now, I am looking into what could be the problem according to all of the information you have provided me, I will get back to you soon with a possible solution, I apologize for taking so much of your time.
Not to apologize. I am happy to have someone helping gather necessary details to put my issue in front of a suitable resource.
I've been looking to reproduce the symptoms with a standalone OpenGL program, separate from the Java+JOGL app in which it comes up. Visual Studio and the OpenGL support libraries (GLEW & GLUT) are of only non-recent familiarity.
Thank you for patiently waiting,
After some research and investigating about this issue I was actually able to find that this kind of issue is addressed by a different department. I would strongly recommend to attempt to get support at:
I apologize I was unable to find any fix for the problem on my side.