OpenGL 是一套由SGI公司發展出來的繪圖函式庫,它是一組 C 語言的函式,用於 2D 與 3D 圖形應用程式的開發上。函數
不可或缺的就是編譯器與基本的函式庫,若是系統沒有安裝的話,依照下面的方式安裝:工具
[1]開發程序, 光有了gcc 是不行的它還須要一個build-essential軟件包oop
做用是提供編譯程序必須軟件包的列表信息,也就是說編譯程序有了這個軟件包,它才知道頭文件在哪,庫函數在哪,
還會下載依賴的軟件包, 最後才組成一個開發環境.測試
$ sudo apt-get install build-essential
[2]安裝OpenGL Libraryui
$ sudo apt-get install libgl1-mesa-dev
[3]安裝OpenGL Utilitiesspa
OpenGL Utilities 是一組建構於 OpenGL Library 之上的工具組,提供許多很方便的函式,使 OpenGL 更強大且更容易使用。code
$ sudo apt-get install libglu1-mesa-dev
[4]安裝OpenGL Utility Toolkitorm
OpenGL Utility Toolkit 是創建在 OpenGL Utilities 上面的工具箱,除了強化了 OpenGL Utilities 的不足以外,也增長了 OpenGL 對於視窗介面支援。blog
$ 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
結果: