zoukankan      html  css  js  c++  java
  • ubuntu14.04安装opengl

    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

    结果:

  • 相关阅读:
    阿里巴巴-工作自传(不断更新)
    Docker(42)- 镜像原理之联合文件系统
    Java 基础语法(2)- 基础数据类型
    Java 基础语法(1)- 注释、标识符、关键字
    IDEA 编译器在变量上面报 Content of collection are updated, but never queried
    Docker(41)- Portainer 可视化面板安装
    Docker(40)- docker 实战三之安装 ES+Kibana
    Docker(39)- docker 实战二之安装 Tomcat
    Docker(38)- docker 实战一之安装 Nginx
    Docker(37)- docker attach 命令详解
  • 原文地址:https://www.cnblogs.com/Jessica-jie/p/6607590.html
Copyright © 2011-2022 走看看