zoukankan      html  css  js  c++  java
  • utunbu下的codeblocks配置openGL环境

    真想骂娘阿,刚开始用utunbu,什么也不明白,不明白我装都软件都在哪里,不知道就像windows下的系统文件那样的文件在哪里,也不知道如何配置环境变量。就这样稀里糊涂的,还要抓紧时间装openGL,在windows下分分钟就装完了阿,在linux下愣是装了俩天,先是那些软件包就装不上,原因是因为linux下的一下软件的相互依赖关系。问题是apt-get给的错误信息完全不对,搞了半天一点进展没有。然后用了aptitude,done,果然要比前面那个好用。这个可以很好的处理处理软件依赖树,还有就是据说在卸载的时候也更干净,这个再以后体会吧。然后装好之后,再把编译器的链接,它的选项配置一下,就是把在链接过程中用到都文件的路径给它,done,ok,其实这时候写的opengl代码就可以跑起来了。但是,当创建plut项目的时候,它要求提供glut的location,其实就是提供用到的头文件和.lib,.a文件的路径,然后,就有耗了我大量的时间,一来根本不知道装完环境后linux把那些文件放到了哪里,二是也不知道到底有些什么文件。这就麻烦了,还有就是codeblocks提供的信息也有问题,就是头文件不能直接放在include文件下,而要放在include/GL/下。然后找了半天,发现系统就那些文件都放在了usr目录下。这个目录的include,里面有用到的所有头文件,在lib下,有要用到的静态链接文件和动态链接文件。在这个文件夹下似乎还有一系列可执行的工具的文件。anyway,这里感觉很像系统文件,而且这里默认是不能改动的。当然,在linux下你要作什么都可以。但是,到现在,仍然没有解决所有问题,我怀疑是没有把用到的所有文件都复制到我提供给codeblocks的目录中,其实我这样作,就算能跑也不好,还是要通过配置环境变量来解决比较好些。。。

    anyway。。。

    建立基本编译环境

    1 sudo apt-get install build-essential

    安装OpenGL Library

    1 sudo apt-get install libgl1-mesa-dev

    安装OpenGL Utilities

    1 sudo apt-get install libglu1-mesa-dev

    安装OpenGL Utility Toolkit

    1 sudo apt-get install freeglut3-dev

    测试效果:a.c

    复制代码
     1 #include <GL/glut.h>
     2 
     3 void init()
     4 {
     5     glClearColor(0.0, 0.0, 0.0, 0.0);
     6     glMatrixMode(GL_PROJECTION);
     7     glOrtho(-5, 5, -5, 5, 5, 15);
     8     glMatrixMode(GL_MODELVIEW);
     9     gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0);
    10 }
    11 
    12 void display()
    13 {
    14     glClear(GL_COLOR_BUFFER_BIT);
    15     glColor3f(1.0, 0, 0);
    16     glutWireTeapot(3);
    17     glFlush();
    18 }
    19 
    20 int main(int argc, char *argv[])
    21 {
    22     glutInit(&argc, argv);
    23     glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
    24     glutInitWindowPosition(0, 0);
    25     glutInitWindowSize(300, 300);
    26     glutCreateWindow("OpenGL 3D View");
    27     init(); glutDisplayFunc(display);
    28     glutMainLoop();
    29     return 0;
    30 }
    复制代码

    编译

    1 gcc a.c -o a -lGL -lGLU -lglut

    效果如图

    ubuntu 12.04安装OpenGL

  • 相关阅读:
    Block定制开发小记
    三个方法解决error: use of moved value
    Rust踩坑日记
    动态竞争
    求数组差/交集函数-php数组函数(二)
    深度完整的了解MySQL锁
    PHP 结合前端 ajax 爬取网站信息后, 向指定用户发送指定短信;
    Nginx配置 隐藏入口文件index.php
    如何用纯 CSS 创作一个按钮文字滑动特效
    Laravel学习:请求到响应的生命周期
  • 原文地址:https://www.cnblogs.com/zhaoxinshanwei/p/4348762.html
Copyright © 2011-2022 走看看