现在Mesa 9.2稳定版已经发布了,有没有一种方法可以在Ubuntu 13.04上升级到它,而不使用不稳定的ppa呢?

我有一台带有AMD显卡的笔记本电脑,偶尔用来玩游戏。在Ubuntu 13.04上使用开源驱动程序的性能只是一般般,但我了解到mesa 9.2与新内核(我已经安装了3.11rc7)结合起来应该会大大提高性能。
过去我使用不稳定的PPA(如x-edgers)遇到过糟糕的经历,所以我决定等待一个稳定版本的Mesa。现在它已经发布了,它会被上传到标准的Ubuntu软件仓库吗?如果没有,是否有一个稳定的Mesa PPA或类似的东西?

13.04有它发布时的任何版本。Mesa 9.2或任何未被回溯或存储库收录的软件/驱动需要通过PPA安装或从源代码编译。驱动程序可能会更新,但根据其“新”程度,很难确定是否以及何时会发生更新。 - Thomas Ward
我明白。但这并不意味着只包含最新稳定版本的mesa的PPA是不可能的。对吧? 我找到了一些类似的PPA,但它们只适用于Ubuntu 12.04。 - nicocarbone
4只是说一下,在一个月后的13.10版本发布时,您将免费获得Mesa 9.2。如果您愿意进行测试,现在就可以开始了。 - fossfreedom
4个回答

这些说明在做任何事情之前都应该读两遍。

当然,你可以自己构建 Mesa,但这需要很多智慧和准备好在出现问题时坚持下去。

只需下载 Mesa 源代码(确保你的 sources.list 中启用了 deb-src 条目):

wget https://launchpad.net/ubuntu/+archive/primary/+files/mesa_9.2.orig.tar.gz https://launchpad.net/ubuntu/+archive/primary/+files/mesa_9.2-1ubuntu1.diff.gz https://launchpad.net/ubuntu/+archive/primary/+files/mesa_9.2-1ubuntu1.dsc

现在我们需要构建依赖项:
sudo apt-get build-dep mesa

由于软件包已经debian化了,这将为您提供一个可以撤销安装所做的任何更改的替罪羊。现在我们应该提取我们的源代码:
dpkg-source -x mesa_9.2-1ubuntu1.dsc
cd mesa-9.2/
dpkg-buildpackage 

现在,我们可以使用 dpkg-buildpackage 进行构建。该过程将在父目录中留下一堆 .deb 文件。您应该安装您需要的那些文件。完成。
如果在任何情况下您遇到以下问题:

dpkg-checkbuilddeps:未满足构建依赖项:llvm-3.3-dev(> = 1:3.3-4)libelf-dev   dpkg-buildpackage:警告:构建依赖项/冲突未满足;退出

这意味着您的库太旧无法构建该软件包。您可以从Saucy下载并自行安装该文件,但风险自负。 简而言之:拥有最新的软件很好,但也存在风险。我建议等待它们在Saucy上发布。(我正在使用Debian,该软件包已经在试验版中了,所以我只需要等一会儿)


对于Mesa来说,你可以尝试使用this PPA。据说它比Xorg-edgers更稳定。根据PPA的描述:
这个PPA提供了更新的X(2D)和mesa(3D)免费图形驱动程序,适用于radeon、intel和nvidia硬件。它在某种程度上受到xorg-edgers PPA的启发,但它只提供图形驱动程序以降低软件包破坏和其他问题的风险。
你可以在Phoronix thread中找到更多信息。

非常接近-对于13.04版本,它提供的是不稳定的mesa 9.3 git而不是稳定的mesa 9.2。 - fossfreedom

首先,您需要下载Mesa 9.2。从主要的Mesa下载网站下载。
下载完成后,需要解压文件。解压.tar.gz文件的方法如下:
tar zxf MesaLib-x.y.z.tar.gz

构建前提条件

lex / yacc - 用于构建GLSL编译器。在Linux系统上,使用flex和bison。分别使用版本2.5.35和2.4.1(或更高版本)应该可以工作。

python - 构建Gallium组件需要Python。版本2.6.4或更高版本应该可以工作。

使用autoconf进行构建(Linux/Unix/X11)

在Unix系统上,构建Mesa的主要方法是使用autoconf。一般的方法是标准的:

./configure
make
sudo make install

但请阅读详细的autoconf指南以获取更多详细信息。
有关更详细的信息,请参阅Mesa网站
要卸载/还原,请参见下文:
检查makefile中是否有make uninstall命令。 如果这个命令无效或不存在,最好仔细阅读make install并手动撤销其操作。
另一种方法是:
重新下载源代码。 运行与源代码一起提供的配置脚本。这将重新构建Makefile。 不要运行make命令。 要卸载,大多数Makefile都定义了一个卸载命令,您可以像这样运行它:
sudo make uninstall

来源:The Mesa 3D图形库


当从源代码安装时,我有哪些卸载/还原的选项?你能提供简短的说明吗? - Christian Skjødt
请参见我回答中的补充内容。希望能有所帮助。 - Mitch

目前没有这样的东西

只有上面提到的这两个ppa。

稳定版本从 Lucid 10.04 到 12.10 Quantal:

ppa:ubuntu-x-swat/x-updates

不稳定版本从 Precise 12.04 到 saucy 13.10 (beta):

ppa:xorg-edgers/ppa

简而言之,目前在Ubuntu 13.4上没有MESA 9.2的稳定ppa,因为13.04分支的源代码是由edgers ppa维护的。

所以目前仅有的升级方式就是使用edgers ppa。