OpenGL 是一套由SGI公司發展出來的繪圖函式庫,它是一組 C 語言的函式,用於 2D 與 3D 圖形應用程式的開發上。
不可或缺的就是編譯器與基本的函式庫,如果系統沒有安裝的話,依照下面的方式安裝:
[1]開發程序, 光有了gcc 是不行的它還需要一個build-essential軟件包
作用是提供編譯程序必須軟件包的列表信息,也就是說編譯程序有了這個軟件包,它才知道頭文件在哪,庫函數在哪,
還會下載依賴的軟件包, 最后才組成一個開發環境.
$ sudo apt-get install build-essential
[2]安裝OpenGL Library
$ sudo apt-get install libgl1-mesa-dev
[3]安裝OpenGL Utilities
OpenGL Utilities 是一組建構於 OpenGL Library 之上的工具組,提供許多很方便的函式,使 OpenGL 更強大且更容易使用。
$ sudo apt-get install libglu1-mesa-dev
[4]安裝OpenGL Utility Toolkit
OpenGL Utility Toolkit 是建立在 OpenGL Utilities 上面的工具箱,除了強化了 OpenGL Utilities 的不足之外,也增加了 OpenGL 對於視窗介面支援。
$ sudo apt-get install libglut-dev
注意:但是在這一步時,我出現了以下情況:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libglut-dev
修改:(改成以下命令)
$ sudo apt-get install freeglut3-dev
測試一下
test.cpp源碼:
#include <GL/glut.h> void init(void) { glClearColor(0.0, 0.0, 0.0, 0.0); glMatrixMode(GL_PROJECTION); glOrtho(-5, 5, -5, 5, 5, 15); glMatrixMode(GL_MODELVIEW); gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0); return; } void display(void) { glClear(GL_COLOR_BUFFER_BIT); glColor3f(1.0, 0, 0); glutWireTeapot(3); glFlush(); return; } int main(int argc, char *argv[]) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); glutInitWindowPosition(0, 0); glutInitWindowSize(300, 300); glutCreateWindow("OpenGL 3D View"); init(); glutDisplayFunc(display); glutMainLoop(); return 0; }
執行以下指令:
$ gcc -o test test.c -lGL -lGLU -lglut
$ ./test
結果: