[Gentoo amd64] 32 bit graphic drivers from git without the multilib overlay

If you use Gentoo amd64 and the Intel/Radeon/Nouveau Open Source graphic drivers you already know the problem: x86_64 drivers from git (like media-libs/mesa-9999 from the x11 overlay) are bleeding edge and fast, while the 32 bit ones from app-emulation/emul-linux-x86 are outdated and slow. This is especially sad considering the most demanding games are the Windows ones you can play through wine and they are 32 bit.

Gentoo’s official way to deal with such a problem is the multilib overlay, unfortunately it’s badly broken and anyway having to recompile half the system just because of mesa is simply crazy. Thanks to Mike Lothian this isn’t a problem anymore: there is an unofficial overlay which lets you compile 32bit mesa directly from portage, without using a chroot or the multilib overlay. He simply tuned the live ebuils from the x11 overlay adding -m32 when needed and so on. As simple as effective. Unfortunately using such an approach you have to keep in sync the ebuilds, also they install on top of the regular emul-linux-x86 packages overwriting the existing libs and forcing to put COLLISION_IGNORE=”/usr/lib32 /lib32″ in your make.conf

This isn’t an issue anymore because he modified the emul-linux-x86 packages to avoid installing the graphic libraries, such a way the 32bit ebuilds don’t need to overwrite anything and you don’t need COLLISION_IGNORE anymore! Again, as simple as effective but no one else did it so thanks Mike!

Using Mike’s FireBurn overlay is very easy, first of all you will have to add it:

layman -a FireBurn

Then you will have to unmask some packages:

echo “media-libs/mesa-32bit” >> /etc/portage/package.keywords
echo “sys-devel/llvm-32bit” >> /etc/portage/package.keywords
echo “x11-libs/libdrm-32bit” >> /etc/portage/package.keywords
echo “dev-libs/libffi-32bit” >> /etc/portage/package.keywords
echo “x11-libs/libX11-32bit” >> /etc/portage/package.keywords
echo “app-emulation/emul-linux-x86-xlibs” >> /etc/portage/package.keywords
echo “app-emulation/emul-linux-x86-opengl” >> /etc/portage/package.keywords

finally you can emerge mesa-32bit:

emerge -av mesa-32bit mesa-progs-32bit

And here it is:

~ $ glxinfo32  | grep OpenGL
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 2.1 Mesa 8.1-devel (git-6404095)
OpenGL shading language version string: 1.20
OpenGL extensions:

3 comments to [Gentoo amd64] 32 bit graphic drivers from git without the multilib overlay

  • Mike Lothian

    Thanks for the article – I hope people find my overlay useful

  • Rajat Pandita

    You have no Idea how useful this has been. I have been staying away from gentoo and gentoo based distros since Xorg 1.13 landed in the repos. I could no longer use the fglrx-legacy drivers and Open Source ATI Drivers would not do the job for me (Running NFSMW on Wine) Game would launch and graphics would be all messed up. Finally I had to start using Ubuntu Based Distro. Which is not bad in itself. Nonetheless the fact that Everything works fine on Ubnutu/Derivatives and noting works on Gentoo/derivatives kept bogling my mind. ( Both 64 Bit though) I was very pissed about this. I did some investigation and found exactly what you have described in your article. We need to have the 32 bit Display drivers installed for 32 bit games to work under wine ( by default all windows games are 32 bit.) Hence this article is of great use to people like me who want to play game under wine on a gentoo based distro in particluar and non ubuntu distros in general.

    I appreicate your great work
    Regards
    Rajat Pandita
    India

Leave a Reply

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>