# \#version must be on the first line in a program and only whitespace are allowed in the declaration

**URL:** <https://discourse.vtk.org/t/version-must-be-on-the-first-line-in-a-program-and-only-whitespace-are-allowed-in-the-declaration/14249>\
**Category:** Development\
**Created:** [July 17, 2024, 9:15am UTC](https://discourse.vtk.org/t/version-must-be-on-the-first-line-in-a-program-and-only-whitespace-are-allowed-in-the-declaration/14249 "2024-07-17T09:15:41Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jiajiadelequ](https://discourse.vtk.org/user_avatar/discourse.vtk.org/jiajiadelequ/32/8738_2.png) [@jiajiadelequ](https://discourse.vtk.org/u/jiajiadelequ)\
**Post date:** [July 17, 2024, 9:15am UTC](https://discourse.vtk.org/t/version-must-be-on-the-first-line-in-a-program-and-only-whitespace-are-allowed-in-the-declaration/14249/1 "2024-07-17T09:15:41Z")

</div>

Hello, I would like to know how to solve this problem  
I am using VTK9.3  
Crash Infomation is as follows:

2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E ERROR: In vtkShaderProgram.cxx, line 442  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E vtkShaderProgram (0x7951e04400): 1:  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 2: #version 300 es  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 3: #ifdef GL\_ES  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 4: #ifdef GL\_FRAGMENT\_PRECISION\_HIGH  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 5: precision highp float;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 6: precision highp sampler2D;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 7: precision highp sampler3D;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 8: #else  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 9: precision mediump float;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 10: precision mediump sampler2D;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 11: precision mediump sampler3D;  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 12: #endif  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 13: #define texelFetchBuffer(a,b) texelFetch(a, Get2DIndexFrom1DIndex(b, textureSize(a, 0)), 0)  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 14: #define texture1D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 15: #define texture2D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 16: #define texture3D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 17: #else // GL\_ES  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 18: #define highp  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 19: #define mediump  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 20: #define lowp  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 21: #if **VERSION** == 150  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 22: #define texelFetchBuffer texelFetch  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 23: #define texture1D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 24: #define texture2D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 25: #define texture3D texture  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 26: #endif  
2024-07-17 17:08:04.102 21795-21863 VTK com.example.vtk2 E 27: #endif // GL\_ES  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 28: #define varying in  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 29:  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 30: in vec2 texCoord;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 31: uniform sampler2D tex;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 32: uniform vec2 texLL;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 33: uniform vec2 texSize;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 34:  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 35:  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 36: ivec2 Get2DIndexFrom1DIndex(int idx, ivec2 texSize)  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 37: {  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 38: float w = float(texSize.x);  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 39: float idx\_f = float(idx);  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 40: int i = int(mod(idx\_f, w));  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 41: int j = (idx - i) / texSize.x;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 42: return ivec2(i, j);  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 43: }  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 44: void main()  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 45: {  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 46: gl\_FragDepth = texture(tex, texCoord\*texSize + texLL).r;  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 47: }  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E 48:  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E ERROR: In vtkShaderProgram.cxx, line 443  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E vtkShaderProgram (0x7951e04400): 0:2: P0005: #version must be on the first line in a program and only whitespace are allowed in  
the declaration  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E ERROR: In vtkOpenGLVertexArrayObject.cxx, line 255  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E vtkOpenGLVertexArrayObject (0x7951e1e0d0): attempt to add attribute without a program for attribute ndCoordIn  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 W Generic Warning: In vtkOpenGLQuadHelper.cxx, line 60  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 W Error binding ndCoords to VAO.  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 W  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E ERROR: In vtkOpenGLRenderWindow.cxx, line 1261  
2024-07-17 17:08:04.103 21795-21863 VTK com.example.vtk2 E vtkEGLRenderWindow (0x7951981400): Couldn’t build the shader program for depth blits
