Setting up a development environment for OpenGL
02 January 2014 By Bhavyanshu Parasher
Installing important external libraries
Just use the following command in linux terminal to download and install all pre-requisites.
sudo apt-get install build-essential mesa-common-dev freeglut3-dev
If the installation went smoothly, you would be able to see some header files in your /usr/include/GL directory location
Compiling OpenGL Programs on Linux Machines
Compiling an OpenGL/GLUT program requires you to use a number of libraries.
- GLUT (library “glut” on Linux)
- OpenGL (library “GL” on Linux)
- GL Utilities (library “GLU” on Linux)
- Windowing specific libraries needed by GLUT. For X-Windows, these include:
- X11
- Xmu
- Xi
Often you’ll also need the math library (library “m” on Linux)
You need to include (more) libraries if you encounter error messages such as:
: undefined reference to `SomeLibraryName'
Including libraries is easy with gcc or g++, just add-l< lib-name >
to the command line.
So, a compilation including all these libraries would look like:
gcc -o programcode programcode.c -lglut -lGL -lGLU -lX11 -lXmu -lXi -lm
Change “gcc” to “g++” if you’re using C++.
The “-o” tells gcc to call the executable “programcode” After compilation, you can run by typing “./programcode” or if “.” is in your path just “programcode” will work.
On many machines, gcc doesn’t know where to find the correct include files (those you added to your code using #include”…”)
Adding -I < include-path >
tells gcc where to find additional include files.
Often the linker doesn’t know where to find some of the libraries if they’re stored in unusual locations (like outside of /usr/lib)
Adding -L < library-path >
tells the linker where to find additional library files.
blog comments powered by Disqus