Skip to content

Instantly share code, notes, and snippets.

@lostgoat
Created May 15, 2018 00:11
Show Gist options
  • Save lostgoat/9b585859d7103b484a54620a723223a6 to your computer and use it in GitHub Desktop.
Save lostgoat/9b585859d7103b484a54620a723223a6 to your computer and use it in GitHub Desktop.
// Get the build deps, I think I remember something funky with pkg-config
sudo apt-get build-dep mesa:i386
// Get a 32 bit llvm
sudo apt-get install llvm-6.0:i386
// Get a meson cross file for 32 bit compiles, place it in your mesa root.
// Mine looks like this and I named it 32.cross:
[binaries]
c = 'gcc'
cpp = 'g++'
ar = 'ar'
strip = 'strip'
pkgconfig = '/usr/bin/i686-pc-linux-gnu-pkg-config'
llvm-config = '/usr/lib/llvm-6.0/bin/llvm-config'
[properties]
c_args = ['-m32', '-B/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/32']
c_link_args = ['-m32', '-B/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/32', '-L/usr/lib32']
cpp_args = ['-m32', '-B/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/32']
cpp_link_args = ['-m32', '-B/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/32', '-L/usr/lib32']
[host_machine]
system = 'linux'
cpu_family = 'x86'
cpu = 'i686'
endian = 'little'
// Gen ninja with meson
PKG_CONFIG_PATH="/usr/lib32/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig" meson build-x86 --cross-file 32.cross --prefix=/opt/mesa32 -Ddri3=true -Dtexture-float=True -Dgallium-vdpau=false -Dgallium-xvmc=false -Dgallium-va=false -Dgallium-omx=disabled
// Build as usual
cd build-x86/
ninja && ninja install
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment