extension `GL_EXT_gpu_shader4' unsupported in fragment shader

1,955 views
Skip to first unread message

Mauro Ferraro

unread,
Feb 4, 2016, 10:55:21 AM2/4/16
to vmtk-users
Hi all,

I compiled the VMTK 1.3 on my Dell M4800 under debian (system at the bottom). When I launch the renderer I get the following error

Executing vmtksurfaceviewer ...
GL_Version: 2.1 Mesa 10.3.2
ERROR: In /usr/local/XThreeMesh/vmtk-build/VTK/Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx, line 545
vtkOSOpenGLRenderWindow (0x2e3a3d0): GL version 2.1 with the gpu_shader4 extension is not supported by your graphics driver but is required for the new OpenGL rendering backend. Please update your OpenGL driver. If you are using Mesa please make sure you have version 10.6.5 or later and make sure your driver in Mesa supports OpenGL 3.2.

ERROR: In /usr/local/XThreeMesh/vmtk-build/VTK/Rendering/OpenGL2/vtkShaderProgram.cxx, line 369
vtkShaderProgram (0x31fec60): 1: #version 120
2: #extension GL_EXT_gpu_shader4 : require
3: #define highp
4: #define mediump
5: #define lowp
6:

ERROR: In /usr/local/XThreeMesh/vmtk-build/VTK/Rendering/OpenGL2/vtkShaderProgram.cxx, line 370
vtkShaderProgram (0x31fec60): 0:2(12): error: extension `GL_EXT_gpu_shader4' unsupported in fragment shader

I am not an expert of OpenGL, which libraries do I need to install?

Thanks,
Mauro

System
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d4)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d4)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d4)
00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d4)
00:1c.6 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #7 (rev d4)
00:1c.7 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #8 (rev d4)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation QM87 Express LPC Controller (rev 04)
00:1f.2 RAID bus controller: Intel Corporation 82801 Mobile SATA Controller [RAID mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 04)
01:00.0 VGA compatible controller: NVIDIA Corporation GK106GLM [Quadro K2100M] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK106 HDMI Audio Controller (rev a1)
03:00.0 Network controller: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter (rev 03)
11:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01)








Simone Manini

unread,
Feb 4, 2016, 10:58:49 AM2/4/16
to vmtk-users
Dear Mauro,
by default vmtk 1.3 is based on VTK 7 which uses OpenGL 2.1 that seems to be not supported by your graphic card/driver under that OS.
A possibile solution is to re-compile vmtk from source and forcing it to use VTK 6.3
Edit the SuperBuild.cmake file and set the flag VTK_GIT_TAG to v6.3.0 (now is v7.0.0)
Let me know if it will work.
Best Regards
Simone

--
You received this message because you are subscribed to the Google Groups "vmtk-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vmtk-users+...@googlegroups.com.
To post to this group, send email to vmtk-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Simone Manini, Eng
Project Manager, OROBIX Srl
via Camozzi 144, 24121 Bergamo, Italy

orobix:  www.orobix.com
web:     daron1337.github.io
twitter:  @daron1337
phone:  +39 035 0273786
             +39 035 0170561

"This message originates from Orobix Srl and its contents and attachments are privileged and confidential and are intended only for the individual(s) or entity(ies) named above. This message should not be forwarded, distributed or disclosed. Any unauthorized use, dissemination and duplication is strictly prohibited and may be unlawful. All personal messages express views solely of the sender, which are not to be attributed to Orobix Srl, and may not be copied or distributed without this disclaimer. If you are not the intended recipient or received this message in error, please delete this message and notify the sender by reply e-mail. Opinions, conclusions and other information in this message that do not relate to the official business of Orobix Srl shall be understood as neither given nor endorsed by it."

Simone Manini

unread,
Feb 4, 2016, 11:15:19 AM2/4/16
to vmtk-users
Dear Mauro and all vmtk-users,
we've just added a new CMAKE variable in the main CMAKE file named VMTK_USE_VTK7 
Please update your source code and then try to set it to OFF ( default is ON )
Best regards,
Simone
Message has been deleted

Mauro Ferraro

unread,
Feb 5, 2016, 12:04:41 PM2/5/16
to vmtk-users
Hi Simone,

I tried to install the official NVIDIA drivers instead to the nouveau distribution. When I launch vmtk I get the following error

mauro@stidhcp-1-056:~/Documenti$ vmtksurfaceviewer -ifile S.stl
Unexpected error: <type 'exceptions.ImportError'>
Traceback (most recent call last):
  File "/usr/local/XThreeMesh/vmtk-build/Install/bin/vmtksurfaceviewer", line 20, in <module>
    from vmtk import pypeserver
  File "/usr/local/XThreeMesh/vmtk-build/Install/lib/python2.7/site-packages/vmtk/pypeserver.py", line 15, in <module>
    import vtk
  File "/usr/local/XThreeMesh/vmtk-build/Install/lib/python2.7/site-packages/vtk/__init__.py", line 41, in <module>
    from .vtkCommonCore import *
  File "/usr/local/XThreeMesh/vmtk-build/Install/lib/python2.7/site-packages/vtk/vtkCommonCore.py", line 9, in <module>
    from vtkCommonCorePython import *
ImportError: No module named vtkCommonCorePython
mauro@stidhcp-1-056:~/Documenti$ vmtk
Traceback (most recent call last):
  File "/usr/local/XThreeMesh/vmtk-build/Install/bin/vmtk", line 26, in <module>
    import vtk
  File "/usr/local/XThreeMesh/vmtk-build/Install/lib/python2.7/site-packages/vtk/__init__.py", line 41, in <module>
    from .vtkCommonCore import *
  File "/usr/local/XThreeMesh/vmtk-build/Install/lib/python2.7/site-packages/vtk/vtkCommonCore.py", line 9, in <module>
    from vtkCommonCorePython import *
ImportError: No module named vtkCommonCorePython

It seems to be the same error another user signaled today.

Best,
Mauro

Simone Manini

unread,
Feb 8, 2016, 10:44:57 AM2/8/16
to vmtk-users
Dear Mauro,
can you check your env variables?
Did you compile it from source or did you use the egg?
Best Regards
Simone

--
You received this message because you are subscribed to the Google Groups "vmtk-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vmtk-users+...@googlegroups.com.
To post to this group, send email to vmtk-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Kurt Sansom

unread,
Feb 8, 2016, 4:47:44 PM2/8/16
to vmtk-users
I am having a very similar issue. I compiled vmtk from source and have the latest nvidia drivers installed and what I believe is the correct OpenGL version. I messed with several of the CMake VTK build settings to no avail. I also ran glxinfo which lists GL_EXT_gpu_shader4. the output is attached.

Executing vmtklevelsetsegmentation ...
Please choose initialization type: 
 0: colliding fronts;
 1: fast marching;
 2: threshold;
 3: isosurface;
 4: seed
 GL_Version: 2.1 Mesa 10.6.5
ERROR: In /home/ksansom/build/vmtk/vmtk-build/VTK/Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx, line 545
vtkOSOpenGLRenderWindow (0x4a61440): GL version 2.1 with the gpu_shader4 extension is not supported by your graphics driver but is required for the new OpenGL rendering backend. Please update your OpenGL driver. If you are using Mesa please make sure you have version 10.6.5 or later and make sure your driver in Mesa supports OpenGL 3.2.

ERROR: In /home/ksansom/build/vmtk/vmtk-build/VTK/Rendering/OpenGL2/vtkShaderProgram.cxx, line 369
vtkShaderProgram (0x3ade100): 1: #version 120
2: #extension GL_EXT_gpu_shader4 : require
...
103: 

ERROR: In /home/ksansom/build/vmtk/vmtk-build/VTK/Rendering/OpenGL2/vtkShaderProgram.cxx, line 370
vtkShaderProgram (0x3ade100): 0:2(12): error: extension `GL_EXT_gpu_shader4' unsupported in fragment shader
glxinfo_output.txt

Mauro Ferraro

unread,
Feb 9, 2016, 2:06:09 AM2/9/16
to vmtk-users
Hi Simone,

I just started again from scratch and the source compiled. I also installed the latest proprietary NVIDIA drivers, but the error is still there. Moreover, when I compile using VTK 6.3 flag I have the following error


make[5]: ***  Nessuna regola per generare l'obiettivo "/usr/lib/x86_64-linux-gnu/libGL.so", necessario per "lib/libvtkftgl-6.3.so.1".  Arresto.
CMakeFiles/Makefile2:1502: set di istruzioni per l'obiettivo "ThirdParty/ftgl/CMakeFiles/vtkftgl.dir/all" non riuscito
make[4]: *** [ThirdParty/ftgl/CMakeFiles/vtkftgl.dir/all] Errore 2
Makefile:117: set di istruzioni per l'obiettivo "all" non riuscito
make[3]: *** [all] Errore 2
CMakeFiles/VTK.dir/build.make:107: set di istruzioni per l'obiettivo "Stamp/VTK/VTK-build" non riuscito
make[2]: *** [Stamp/VTK/VTK-build] Errore 2
CMakeFiles/Makefile2:131: set di istruzioni per l'obiettivo "CMakeFiles/VTK.dir/all" non riuscito

Best,
Mauro

Mauro Ferraro

unread,
Feb 10, 2016, 5:42:57 AM2/10/16
to vmtk-users
Hi all,

I found this discussion on VTK-Dev forum


It seems to be a known bug with Mesa on Linux. I think that we can only wait the release of the fix...

Best,
Mauro

Mauro Ferraro

unread,
Feb 16, 2016, 6:18:13 AM2/16/16
to vmtk-users

Dear Kurt,


I saw your post on VT-users forum

http://vtk.1045678.n5.nabble.com/GL-EXT-gpu-shader4-unsupported-help-td5736435.html

Did you solve the problem? Actually, I have no idea where to start fixing....

Best,
Mauro

Simone Manini

unread,
Feb 16, 2016, 6:27:59 AM2/16/16
to vmtk-users
Dear Mauro,
did you try to recompile vmtk following this suggestion?

I suspect you have selected OSMesa when building VTK (or your application was compiled to use OSMesa). Make sure any cmake OSMESA options in you VTK build are turned off. They may be advanced options.

Best Regards
Simone

Mauro Ferraro

unread,
Feb 16, 2016, 8:46:40 AM2/16/16
to vmtk-users
Dear Simone,


Here attached the ccmake options for the VTK build. The only options that seems related to OSMesa is VTK_OPENGL_HAS_OSMESA (OFF by default). I will try to compile VTK separately and then VMTK using system VTK. In your opinion, change the VTK_RENDERING_BACKEND to OpenGL can be useful?

Best,
Mauro
Istantanea - 16. 02. 16 - 14:42:51.png

Mauro Ferraro

unread,
Feb 16, 2016, 1:29:31 PM2/16/16
to vmtk-users
Dear Simone,

I compiled VTK and VMTK separately and the renderer now works (just need to set correctly the environmental variables for VTK) However, I had to deactivate vtk_vmtk contribs because of the following compilation error

[ 97%] Building CXX object vtkVmtk/Contrib/CMakeFiles/vtkvmtkContrib.dir/vtkvmtkDolfinWriter2.cxx.o
/usr/local/vmtk/vtkVmtk/Contrib/vtkvmtkDolfinWriter2.cxx: In static member function ‘static void vtkvmtkDolfinWriter2::GetDolfinCellConnectivity(vtkCell*, vtkIdList*)’:
/usr/local/vmtk/vtkVmtk/Contrib/vtkvmtkDolfinWriter2.cxx:336:57: error: invalid conversion from ‘vtkIdList*’ to ‘int’ [-fpermissive]
       vtkSortDataArray::Sort(pointIds,dolfinConnectivity);
                                                         ^
In file included from /usr/local/vmtk/vtkVmtk/Contrib/vtkvmtkDolfinWriter2.cxx:36:0:
/usr/local/VTK/Common/Core/vtkSortDataArray.h:93:15: note: initializing argument 2 of ‘static void vtkSortDataArray::Sort(vtkIdList*, int)’
   static void Sort(vtkIdList *keys, int dir);
               ^

how can I fix it and/or I can remove this specific contrib with no additional effort?

Best,
Mauro

Simone Manini

unread,
Feb 17, 2016, 4:17:21 AM2/17/16
to vmtk-users
Dear Mauro, 
thank you for letting us know. We’ll fix it asap and we’ll add some CMake option in VMTK in order to compiling VTK under Linux without the Mesa. After that, we’ll also update the python egg file for Linux.
Regarding the error under vtkvtmtkDolfinWriter2, we’re currently looking into it.
Thank you 
Simone



--
You received this message because you are subscribed to the Google Groups "vmtk-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vmtk-users+...@googlegroups.com.
To post to this group, send email to vmtk-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Simone Manini

unread,
Mar 3, 2016, 6:04:31 AM3/3/16
to vmtk-users
Dear Mauro and all vmtk-users.
The develop version of vmtk on github has been fixed.
Now you can compile vmtk using OpenGL instead of OpenGL2, there’s a flag in the main CMake.
Moreover, the error under vtkvtmtkDolfinWriter2 has been fixed and now you are able to compile vmtk with contrib.
Binary files for linux and windows will come soon.
Best regards
Simone

Petar Petrov

unread,
Dec 20, 2016, 6:08:20 AM12/20/16
to vmtk-users
This way you loose depth peeling support (nice transparent objects)
so OpneGL instead of OpenGL2 is not a solution !!!!!!!!!

Luca Antiga

unread,
Dec 28, 2016, 3:55:22 PM12/28/16
to vmtk-users
We’ll check OpenGL2 with VTK7.1, hopefully we’ll re-enable OpenGL2 in the near future.
Best,

Luca
Reply all
Reply to author
Forward
0 new messages