I use GLEW and freeglut. For some reason, after a call to glewInit(), glGetError() returns error code 1280, even with glewExperimental = GL_FALSE.
I cannot compile
Did you see the comment on this wiki page?
http://www.opengl.org/wiki/OpenGL_Loading_Library
It mentions why this occurs, and it says "in some cases you may still get GL_INVALID_ENUM after specifying glewExperimental depending on your glew version".
It sounds like it might be safe to ignore as long as you're not seeing any other problems.
It seems glew just does not work correctly... The easiest solution for me was using libepoxy. It does not require any init thing. Just replace your
#include <GL/glew.h>
with
#include <epoxy/gl.h>
#include <epoxy/glx.h>
and remove all the glew code. If you use gcc, you will also have to replace "-lGLEW" with "-lepoxy". That's it. For example I have something like:
g++ main.cpp -lepoxy -lSDL2 -lSDL2_image -lSDL2_mixer -lglut -lGLU -o main
It seems to be important to keep epoxy flag before others.