Setup a 64bit system to run 32bit appimages

Ismael Barros² edited this page Apr 16, 2015 · 6 revisions

AppImages are usually built for 32bit systems, and not compatible with 64bit systems.

These are the steps to install the 32bit libraries needed to make AppImages run on a 64 bit system.

Scripted way

This script automates installing the missing libraries. It has been tested on Ubuntu 12.04 and 14.04.

bash <(curl -s https://raw.githubusercontent.com/RazZziel/PortableLinuxGames/master/setup64bitSystemForAppImages)

Manual way

They have been tested on a 64bit Ubuntu 12.04.

First we must install basic 32bit support. The names of the packages may differ in your distro.

sudo apt-get update
sudo apt-get install libc6-i386 libglib2.0-0:i386 libfuse2:i386

libGL

AppImages don't include libGL.so.1, because it depends on the graphics driver you're using. For example, of you're using mesa3d drivers, you'll need to install this package:

sudo apt-get install libgl1-mesa-glx-lts-quantal:i386

libfuse

Some Ubuntu versions don't provide a 32bit fuse library for 64bit systems, so we'll have to install our own. We'll download a 32bit libfuse package and extracting the library to the /lib32 directory.

pushd /tmp/
wget http://archive.ubuntu.com/ubuntu/pool/main/f/fuse/libfuse2_2.8.1-1.1ubuntu2_i386.deb
ar x libfuse2_2.8.1-1.1ubuntu2_i386.deb data.tar.gz
tar -xhf data.tar.gz ./lib/libfuse.so.2.8.1
sudo install -o root lib/libfuse.so.2.8.1 /lib32/libfuse.so.2
rm lib/libfuse.so.2.8.1 data.tar.gz libfuse2_2.8.1-1.1ubuntu2_i386.deb
rmdir lib
sudo ldconfig
popd

Other dependencies

Some packages don't include libpulse, because it's a runtime dependency, so they will run but they will have no sound. This is how to install 32bit libpulse support.

sudo apt-get install libpulse0:i386 libvorbisfile3:i386

Some packages include all needed libraries to run a game (usually they are marked as -archlinux), but some will only include those commonly found in most distros. Here for example we'll install the libraries needed to run "McDROID DEMO".

sudo apt-get install libglu1-mesa:i386 libxcursor1:i386