路程艰辛啊!在这里做个记录,由于需要接触OPENGL,而在网上搜索说OPENGL只是一种标准规范,有一些工具库(如GLUT),然后知道MESA是封装了OPENGL的,所以首先需要安装MESA。网址为http://mesa3d.sourceforge.net/,然后去下载MESA源码,Primary Mesa download site:ftp://ftp.freedesktop.org/(FTP),然后可以去下载你需要的版本源码。
1.我下载了MesaLib-8.0.3.tar.gz,mesa-demos-8.0.1.tar.gz,MesaGLUT-7.9.2.tar.gz基本是目前最新的版本。
2. 解压几个源码包
tar zxvf MesaLib-8.0.3.tar.gz(得到目录Mesa-8.0.3)
tar zxvf mesa-demos-8.0.1.tar.gz(得到目录mesa-demos-8.0.1)
tar zxvf MesaGLUT-7.9.2.tar.gz(得到目录Mesa-7.9.2)
3. 开始安装Mesa-8.0.3
1)先按照网上说的通过apt-get install 安装libdrm-dev,x11proto-dri2-dev,libxxf86vm-dev,libxt-dev
2)执行 ./configure后报错:
configure: error: Package requirements (glproto >= 1.4.14) were not met:
Requested 'glproto >= 1.4.14' but version of GLProto is 1.4.11
我去软件管理器中(System->Administration->synaptic package manager)查找该包,我安装的的确是1.4.11,显示的最新版本也是1.4.11啊!
然后去网上继续查啊!找到一个网址可以下载包来自己安装,一看版本满足我的需要。
在网址http://packages.ubuntu.com/source/precise/x11/中,找到x11proto-gl (1.4.14-2),然后点击进去下载x11proto-gl_1.4.14.orig.tar.gz,
然后随便拷到一个路径下,进行解压(tar zxvf x11proto-gl_1.4.14.orig.tar.gz ),然后得到glproto-1.4.14目录;进入目录(cd glproto-1.4.14);
安装库:a) ./configure b) make -j4 c) make install
3) 再在Mesa-8.0.3目录下执行 ./configure后又报错:
configure: error: Direct rendering requires libdrm >= 2.4.24
又是库版本低的问题,按照上面的2)步骤下载libdrm_2.4.32.orig.tar.gz库,然后进行编译安装。
4) 再在Mesa-8.0.3目录下执行 ./configure后又报错:
configure: error: Package requirements (dri2proto >= 2.6) were not met:
Requested 'dri2proto >= 2.6' but version of DRI2Proto is 2.3
5) 再在Mesa-8.0.3目录下执行 ./configure后又报错:
configure: error: Package requirements (x11 xext xdamage xfixes x11-xcb xcb-glx xxf86vm) were not met:
No package 'x11-xcb' found
No package 'xcb-glx' found
在UBUNTU软件包管理中(System->Administration->synaptic package manager中查找这两个库名,发现的确没有安装,
然后选中并安装libx11-xcb-dev libxcb-glx0 libxcb-glx0-dev
6) 再在Mesa-8.0.3目录下执行 ./configure后又报错:
configure: error: LLVM is required to build Gallium R300 on x86 and x86_64
安装了llvm-dev,仍然不行,而且google了许多,都说是要安装llvm-dev,但都不行。最后仔细查看输入发现在提示该错误行的上一行提示是:检查llvm-config。
结果是系统没有安装llvm,使用apt-get install llvm 安装llvm库
7) 再在Mesa-8.0.3目录下执行 ./configure
这次终于可以通过了,不容易啊!
8)再在Mesa-8.0.3目录下执行 make -j4
不幸的是又报错了:nouveau_driver.h:49: fatal error: nv04_pushbuf.h: No such file or directory
继续去网上百度,有高人说CONFIGURE时需要设置东西,如:./configure --with-dri-drivers="swrast,i915"
9)再在Mesa-8.0.3目录下执行 ./configure --with-dri-drivers="swrast,i915"
10)再在Mesa-8.0.3目录下执行 make -j4
OK,编译通过
11) make install
路漫漫其修远兮啊!吾将上下而求索,终于给安装上了。
安装一下DEMO,然后跑来看看。
进入到mesa-demos-8.0.1目录,执行: ./configure ; make -j4 ;make install(在此过程中,可能会出现“error: GLEW required”错误,这时可以在软件管理器里找到libglewxxx(version)-dev并安装,也可以手动下载一个库包自己进行编译安装。)
然后进入到demos, or Samples中随便运行几个实例,真的很炫。
抓了几个个动画的图片上来