Is there a lint tool for OpenGL Shading Language?

glsl, lint, opengl, opengl-es, shader

Solution

You can build shaders on the command line, the same way as you compile your c or c++ program or whatever you are using. If you are using Makefile, just add the compilation of the shaders.

You can use Cg compiler to compile both Cg and GLGL shaders. It should be available on all platforms.

Problem

I've started working with OpenGL and writing shaders. My app checks for errors after loading and compiling shader programs, and if there is a problem it prints out the info log. This is great for catching errors (and I'm a newbie so I'm making a lot), but what I'd really like is to catch these errors at build time. If I had a `lint` tool that could simply check a vertex or fragment shader for syntax errors, I could add it to my build process and have it stop the build. I haven't been able to find such a tool. I started to try to write one, but I'm working on OpenGL ES and had trouble trying to write a desktop program that links against the ES libraries. Maybe I missed it somewhere. Does such a tool exist?

Original source

Related problems