首页 > 学院 > 开发设计 > 正文

[OpenGL] CentOS7 安装 mesa

2019-11-06 06:35:41
字体:
来源:转载
供稿:网友
CentOS 7安装 mesa===============How to install mesa on centos 7.-------------------------------- **1.  下载原文件** 下载连接:  [mesa-11.1.3.tar.gz](https://mesa.freedesktop.org/archive/older-versions/11.x/11.1.3/mesa-11.1.3.tar.gz)  [freeglut-3.0.0.tar.gz](https://Excellmedia.dl.sourceforge.net/PRoject/freeglut/freeglut/3.0.0/freeglut-3.0.0.tar.gz)  [libdrm-2.4.66.tar.bz2](https://dri.freedesktop.org/libdrm/libdrm-2.4.66.tar.bz2)  [llvm-3.8.0.src.tar.gz](http://releases.llvm.org/3.8.0/llvm-3.8.0.src.tar.xz)  [cfe-3.8.0.src.tar.xz](http://releases.llvm.org/3.8.0/cfe-3.8.0.src.tar.xz)  [compiler-rt-3.8.0.src.xz](http://releases.llvm.org/3.8.0/compiler-rt-3.8.0.src.tar.xz)  [test-suilt-3.8.0.src.tar.xz](http://releases.llvm.org/3.8.0/test-suite-3.8.0.src.tar.xz)  [mesa-demos-8.3.0.tar.bz2](https://mesa.freedesktop.org/archive/demos/8.3.0/mesa-demos-8.3.0.tar.bz2)  [glu-9.0.0.tar.bz2](https://mesa.freedesktop.org/archive/glu/glu-9.0.0.tar.bz2)   **2.  安装依赖库**```    $ sudo yum install xorg-x11-proto-devel    $ sudo yum install libxcb-devel    $ sudo yum install libpciaccess-devel    $ sudo yum install libdrm-devel    $ sudo yum install libxshmfence-devel    $ sudo yum install libX11-devel    $ sudo yum install libXext-devel    $ sudo yum install libXdamage-devel    $ sudo yum install libXfixes-devel    $ sudo yum install libxcb-devel    $ sudo yum install libudev-devel    $ sudo yum install expat-devel``` **3.  安装llvm**```    $ tar xvf llvm-3.8.0.src.tar.xz    $ tar xvf cfe-3.8.0.src.tar.xz    $ tar xvf compiler-rt-3.8.0.src.tar.xz    $ tar xvf test-suite-3.8.0.src.tar.xz    $ cp cfe-3.8.0 llvm-3.8.0/tools/clang -r    $ cp compiler-rt-3.8.0 llvm-3.8.0/projects/compiler-rt -r    $ cp test-suite-3.8.0 llvm-3.8.0/projects/test-suite -r    $ cd llvm-3.8.0    $ mkdir build    $ cd build    $ ../configure --enable-shared --enable-optimized    $ make -j8    $ sudo make install``` **4.  安装mesa**```    // install mesa    $ cd mesa-11.1.3/    $ ./configure    $ make -j8    $ sudo make install        // install glu    $ cd glu-9.0.0    $ ./configure    $ make -j8    $ sudo make install     // install freeglut    $ cd freeglut-3.0.0    $ sudo yum install libXi-devel    $ cmake ./CMakeLists.txt    $ make -j8    $ sudo make install``` **5.  连接库**```    // copy the old lib back.    # cd /usr/lib64    # mkdir glbak    # cp libGL* glbak    # rm libGL.so.1    # ln -s /usr/local/    # ln -s /usr/local/lib/libGL.so.1.2.0 ./libGL.so    # ln -s /usr/local/lib/libGL.so.1.2.0 ./libGL.so.1    # rm libGLU.so.1    # ln -s /usr/local/lib/libGLU.so.1.3.1 ./libGLU.so.1    # ln -s /usr/local/lib64/libglut.so.3.10.0 ./libglut.so    # cp dri/ dri_bak -r    # rm dri -rf    # ln -s /usr/local/lib/dri/ .    # reboot``` **5.  测试** OpenGL 测试代码: ```// file test.c#include <GL/glut.h>void init();void display();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;}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);        glutWireTeapot(3);        glFlush();} ```代码显示结果如下:
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表