分享

在Ubuntu 14.04上安装最新版mesa

 特—亮 2014-12-26

关于 mesa

mesa是一个开源的OpenGL的实现。它被广泛用于包括X-Windows在内的各种渲染系统中。 具体见官网:http://www./intro.html
现在,我们将在Ubuntu 14.04上编译并安装最新版mesa。

安装 LLVM/Clang 3.3

LLVM/Clang是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间(compile-time)、链接时间(link-time)、运行时间(run-time)以及空闲时间(idle-time),它是编译mesa的依赖之一。目前,LLVM/Clang的最新版为3.4,在Ubuntu 14.04上,我们可以直接使用 sudo apt-get install llvm来安装最新版LLVM/Clang。但是,由于LLVM 3.4的一些bug会对之后的工作造成一定的麻烦,这里,我们自行编译、安装较为稳定的LLVM 3.3。
具体的,首先,我们从http://www./releases/上下载LLVM 3.3 和 Clang 3.3的源代码。源代码下载完成后,进行解压缩,然后将Clang 3.3的源代码目录命名为clang,并移动到llvm源代码目录下的tools目录下。具体的目录关系应如下所示:
  1. <llvmsrc>  
  2.     tools  
  3.         clang  
接下来我们使用configure来配置生成llvm的Makefile文件,然后就可以进行编译与安装。注意,这里llvm之后要被mesa所link,所以在配置是应开启--enable-shared选项。
  1. cd llvm-3.3.src  
  2. ./configure --enable-shared=yes  
  3. make  
  4. sudo make install  

安装 libdrm-2.4.54

最新版的mesa的编译需要高于2.4.54的libdrm_radeon库,我们使用与上文介绍的相同的方法来编译和安装。
首先,从http://dri./libdrm/下载libdrm 2.4.54的源代码,解压缩后,运行如下命令。

  1. cd libdrm-2.4.54  
  2. ./configure  
  3. make  
  4. sudo make install  

安装其他依赖包

mesa的编译还需要其他依赖包,如果这些包缺失,mesa的配置将会失败,我们可以从configure的错误信息中得出缺失的包的名字,然后自行安装,以下罗列了安装一些可能缺失的包的命令(Ubuntu下)。
  1. sudo apt-get install x11proto-gl-dev  
  2. sudo apt-get install  x11proto-dri2-dev  
  3. sudo apt-get install  x11proto-dri3-dev  
  4. sudo apt-get install  x11proto-present-dev  
  5. sudo apt-get install libxdamage-dev  
  6. sudo apt-get install libxext-dev  
  7. sudo apt-get install libx11-xcb-dev  
  8. sudo apt-get install libxcb-glx0-dev  
  9. sudo apt-get install libxcb-dri2-0-dev  
  10. sudo apt-get install libxcb-dri3-dev  
  11. sudo apt-get install libxcb-present-dev  
  12. sudo apt-get install libxshmfence-dev  
  13. sudo apt-get install libudev-dev  
  14. sudo apt-get install autoreconf  
  15. sudo apt-get install libtool  
  16. sudo apt-get install expat  
  17. sudo apt-get install libexpat1-dev  

获取mesa的最新源代码

我们使用git(git可以使用sudo apt-get install git来安装)来获取mesa的最新源代码。之后就可以进行配置,编译与安装。 需要注意的是,git master branch所获得的源代码中并不包含生成好的configure文件,作为替代,我们运行autogen.sh命令来生成和运行configure,因此configure的配置选项也应该加入到autogen.sh命令后。 
  1. git clone git://anongit./git/mesa/mesa  
  2. cd mesa  
  3. sudo ./autogen.sh --enable-gbm --enable-glx-tls  
  4. make  
  5. sudo make install  

至此mesa的编译与安装就成功了,在mesa目录下,我们可以使用git pull origin命令来获得最新版的mesa代码,并编译和安装。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约