2

I recently began working with Open GL 4.0 using the Redbook 8th edition. From the start of the morning until now I wasn't able to compile the 'HelloWorld' of OpenGL programs.

I configured the dependencies, transferred file contents of freeGlut/GLEW/GLSL to the respective VC folder for my VS 2013 C++ IDE. I eventually became convinced that the catalyst for this breakdown of events happened because VS was referencing multiple lib files in different locations and the linker couldn't make heads- to tails of what it was referencing.

However I realized another issue that I was naive/ignorant about. Could I be having compiling issues not because of my dependency configuration but because I only have a built in chipset instead of a card and no MESA?

I don't know if my built-in chipset supports openGL 4.0

Intel(R) HD Graphics 4000

EDIT: My compiltation errors within VS 2013 give no 'clue' that its a hardware issue. All of them are LNK2005 issues.

Jebathon
  • 4,310
  • 14
  • 57
  • 108
  • Considering OpenGL is designed to be extended at ***run-time***, the hardware you are using (or not using, in this case) has nothing to do with how the code is compiled. Any compiler errors are 100% the result of something unrelated... – Andon M. Coleman Jan 01 '14 at 00:23
  • According to Intel [here](http://www.intel.com/support/graphics/sb/CS-033757.htm), the 4000 supports OpenGL 4.0. YMMV. – radical7 Jan 01 '14 at 02:55

1 Answers1

6

You can compile GL4 programs all day long. Totally independent of what graphics hardware you may or may not have. Hell, you can cross-compile Win32 OpenGL programs from a headless Linux box using MinGW if you really wanted to!

Whether or not you can run those programs is a function of your GL implementation.

Wiki claims you can do GL 4.0 with your HD 4000 on Windows.

genpfault
  • 51,148
  • 11
  • 85
  • 139
  • Aye, and with mesa3d you can do software rendering. – user1095108 Jan 01 '14 at 00:59
  • 1
    @user1095108: but mesa has not reached GL4 yet – derhass Jan 01 '14 at 01:26
  • 1
    Put a call to glGetString(GL_VERSION) in your code and see what your GPU returns. For completeness, call glGetString(GL_RENDERER) and glGetString(GL_VENDOR) too. My HD Graphics 5000 supports GL 4.0 but I don't know if the HD Graphics 4000 does. – Dithermaster Jan 01 '14 at 01:36