64位ubuntu的OpenGL环境塔建

来源:互联网 发布:算法统宗分银子问题 编辑:程序博客网 时间:2024/06/05 02:56

64位ubuntu12.10下OpenGL

更新:2013-07-17

/////////////////////////////////////////////////////////////////////


a.建立基本编译环境。
  首先不可或缺的,就是编译器与基本的函式库,如果系统没有安装的话,
  请依照下面的方式安装:
  sudo apt-get install build-essential
  编译c/c++所需要的软件包都会被安装,包含了gcc、g++、make、gdb、libc等等。
b.安装OpenGL Library。
  这是OpenGL的基本函数库。
  sudo apt-get install libgl1-mesa-dev
  软件包清单(filelist of package)
  /usr/lib/x86_64-linux-gnu/libGL.so
  /usr/lib/x86_64-linux-gnu/mesa/libGL.so
  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
  /usr/lib/x86_64-linux-gnu/pkgconfig/gl.pc
  /usr/share/doc/libgl1-mesa-dev/changelog.Debian.gz
  /usr/share/doc/libgl1-mesa-dev/copyright
  ...
c.安装OpenGL Utilities。
  OpenGL Utilities它们利用底层的OpenGL Library来执行一些特定的任务,
  提供许多很方便的函式,使 OpenGL更强大且更容易使用。
  接下来安装OpenGL Utilities
  sudo apt-get install libglu1-mesa-dev
  软件包清单(filelist of package)
  /usr/include/GL/glu.h
  /usr/include/GL/glu_mangle.h
  /usr/lib//x86_64-linux-gnu/libGLU.a
  /usr/lib//x86_64-linux-gnu/libGLU.so
  /usr/lib//x86_64-linux-gnu/libGLU.so.1
  /usr/lib//x86_64-linux-gnu/libGLU.so.1.3.1
  /usr/lib//x86_64-linux-gnu/pkgconfig/glu.pc
  /usr/share/doc/libglu1-mesa-dev/changelog.Debian.gz
  /usr/share/doc/libglu1-mesa-dev/copyright
d.安装OpenGL Utility Toolkit。
  OpenGL Utility Toolkit是建立在OpenGL Utilities上面的工具箱,除了强化
  了OpenGL Utilities的不足之外,也增加了OpenGL对于视窗介面支援,独立于
  窗口的系统工具包,隐藏了不同窗口系统API带来的复杂性。
  sudo apt-get install libglut-dev
  注意在这一步的时候,可能会出现以下情况,shell提示:
  正在读取软件包列表...完成正在分析软件包的依赖关系树
  正在读取状态信息... 完成
  E: 未发现软件包 libglut-dev
  如果出现上述情况,请输入将上述命令改成
  sudo apt-get install freeglut3-dev,freeglut是glut的开源实现。
  软件包清单(filelist of package)
  /usr/include/GL/freeglut.h
  /usr/include/GL/freeglut_ext.h
  /usr/include/GL/freeglut_std.h
  /usr/lib/x86_64-linux-gnu/libglut.a
  /usr/lib/x86_64-linux-gnu/libglut.so
  /usr/lib/x86_64-linux-gnu/libglut.so.3
  /usr/lib/x86_64-linux-gnu/libglut.so.3.9.0
  /usr/share/doc/freeglut3-dev/changelog.Debian.gz
  /usr/share/doc/freeglut3-dev/copyright
  /usr/share/doc/freeglut3-dev/download.html
  /usr/share/doc/freeglut3-dev/freeglut.html
  /usr/share/doc/freeglut3-dev/freeglut_logo.png
  /usr/share/doc/freeglut3-dev/freeglut_user_interface.html
  /usr/share/doc/freeglut3-dev/index.html
  /usr/share/doc/freeglut3-dev/ogl_sm.png
  /usr/share/doc/freeglut3-dev/progress.html
  /usr/share/doc/freeglut3-dev/structure.html
e.Ubuntu>=11.10的版本需要安装以下包以解决连接问题。
  sudo apt-get install binutils-gold
f.测试。

    先写一个简单的OpenGL程序,test.c 如下:

#include <GL/freeglut.h>void init();void display();int main(int argc, char** argv){glutInit(&argc, argv);glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);glutInitWindowPosition(0, 0);glutInitWindowSize(500, 500);glutCreateWindow(argv[0]);init();glutDisplayFunc(display);glutMainLoop();return 0;}void init(){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);}void display(){glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0, 0, 0);glutSolidTeapot(3);glFlush();} 

编译连接。
gcc example.c -lGL -lGLU -lglut
下面简单说明一下所使用的 gcc 参数
-l<Library>告诉gcc去连结指定Library,
包含了freeglut.h头文件之后,也就包含了gl.h和glu.h。
运程序: ./a.out

如果看到茶壶图片,代表成功了!


本博客版权声明点击打开链接

原创粉丝点击