Open main menu
SUPPORT DOCUMENTATION

Running Scream and other Güralp tools on 64-bit Linux

64-bit Linux distributions have traditionally supported 32-bit applications, such as Scream, using a single 32-bit support package called i32libs. This contained 32-bit versions of most of the common shared objects (libraries). Unfortunately, it grew very large and, because it needed updating every time any of the included libraries were updated, it became unmanageable.

Modern Linux distributions have moved to a new model, known as "multiarch". Under multiarch, each library is once again a separate package and the 32-bit versions are typically distinguished by a suffix such as :i386 or :i686. Consult your operating system documentation for details.

It is, therefore, often necessary to install additional libraries in order to run Scream and the other Güralp Linux tools, such as gcf2msd or gcf2sac on 64-bit Linux platforms. The precise details vary between distributions but most will follow either the Ubuntu model, the Debian model or the Red Hat/Fedora/CentOS model, for which details are given below.

If the instructions below do not work for you, please contact even if you fix the problem yourself - so that we can expand this page for the benefit of other users.

Ubuntu, Mint and similar systems

Download the scream .deb file according to the download instructions and then, from the directory where the .deb file is located, run the following commands to install the necessary libraries and the application:

sudo dpkg --add-architecture i386 sudo apt-add-repository "deb [arch=i386] http://archive.ubuntu.com/ubuntu/ trusty main" sudo apt-get update sudo apt-get install libc6:i386 libx11-6:i386 libjpeg62:i386 libxext6:i386 libsm6:i386 libxt6:i386 libxpm4:i386 sudo apt-get install $(pwd)/scream-4.6-1.i386.deb
Tested on Ubuntu 18.04 LTS "Bionic Beaver" and 22.04.6 LTS "Jammy Jellyfish"

Debian

Download the scream .deb file according to the download instructions and then, from the directory where the .deb file is located, run the following commands to install the necessary libraries and the application:

sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libc6:i386 libx11-6:i386 libjpeg62-turbo:i386 libxext6:i386 libsm6:i386 libxt6:i386 libxpm4:i386 sudo apt-get install $(pwd)/scream-4.6-1.i386.deb
Tested on Debian 9.9 "Stretch" and Debian 11.6 "Bullseye"

Red Hat, Fedora, CentOS and similar systems

On these systems, it is necessary to edit the file /etc/yum.conf to direct the system to use the multiarch system. As root, open the file in your favourite editor and add the line

multilib_policy=all

then save the file.

Now run one of the following commands, which enable the use of an additional repository. The correct command* to use depends on your operating system version:

*This information came from https://fedoraproject.org/wiki/EPEL

Lastly, run the following command to install the necessary libraries:

sudo yum install glibc.i686 libgcc.i686 libICE.i686 libjpeg.i686 libjpeg-turbo.i686 libSM.i686 libX11.i686 libXext.i686 libXp.i686 libXt.i686

If you receive errors regarding libjpeg, try omitting it:

sudo yum install glibc.i686 libgcc.i686 libICE.i686 libjpeg-turbo.i686 libSM.i686 libX11.i686 libXext.i686 libXp.i686 libXt.i686
Tested on CentOS 6.10, CentOS 8.2 and Rocky 9

Arch Linux

On these systems, it is necessary to edit the file /etc/pacman.conf to enable the multiarch system. Uncomment the following two lines:

[multilib] Include = /etc/pacman.d/mirrorlist

and then upgrade the system by running

pacman -Syu

Now use pacman in the usual way to install the required libraries:

pacman -S gcc gcc-multilib lib32-glibc lib32-libice lib32-libjpeg6-turbo lib32-libjpeg-turbo lib32-libsm lib32-libx11 lib32-libxext lib32-libxt

Finally, build and install lib32-libxp with the following commands:

pacman -S git base-devel lib32-gcc-libs git clone https://aur.archlinux.org/lib32-libxp.git cd lib32-libxp makepkg -si
Thanks to Jeremy at Weston Geophysical Group for testing.
Problems reported with Arch 6.7, March 2024. Contact for advice.

OpenSuse

Support for 32-bit applications in OpenSuse is turned on by installing the x86 runtime environment pattern and, then, the appropriate 32-bin libraries. From the command line, run:

zypper refresh zypper install compat-32bit zypper install glibc-32bit libgcc_s1-32bit libICE6-32bit libjpeg62-32bit libjpeg62-turbo-32bit zypper install libSM6-32bit libX11-6-32bit libXext6-32bit libXp6-32bit libXt6-32bit
Tested on OpenSuse LEAP 15.1

If you experience problems, please contact for assistance. Include in your mail details of your operating system type and version as well as any error messages encountered during the installation attempt.