glGetAttribLocation on separate shader objects

I have a vertex shader compiled with glCreateShaderProgramv which works fine and produces a valid program (checked with glIsValidProgram). However, I cannot use glGetAttribLocation on it (giving me GL_INVALID_OPERATION.) The documentation states that the program must be linked, and indeed, GL_LINK_STATUS for the vertex shader is GL_FALSE.

How can this be? The glCreateShaderProgram documentation ( mentions that it is equivalent to <…> where a glLinkProgram is present, so what’s going on here? Can I use glGetAttribLocation with separate vertex shader objects at all?

Using explicit locations is unfortunately not an option, as I’m porting a DX11 based system and those use vertex layouts. This is using the latest stable NVIDIA drivers.

[SOLVED] The program wan’t compiling correctly :frowning: Works now as expected.