Difference between revisions of "Using 32-bit applications on Arch64"

From ArchWiki
Jump to: navigation, search
(Packages: update)
(Tested Applications: skype is in the repos doesn't need to be listed here)
Line 41: Line 41:
 
** lib32-qt lib32-nvidia-utils lib32-gtk2 lib32-curl
 
** lib32-qt lib32-nvidia-utils lib32-gtk2 lib32-curl
 
Note : Google Earth seems to work here without lib32-qt
 
Note : Google Earth seems to work here without lib32-qt
* Skype
 
** lib32-qt, lib32-alsa-lib
 
  
 
==Environment Variables==
 
==Environment Variables==

Revision as of 18:41, 7 January 2012

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Introduction

64-Bit-Processors like Athlon 64 are able to execute 32- and 64-Bit-programs at the same time.

Currently I am working on an easy solution to solve this. It does not use a cross-compiler nor a chroot-environment. I just make use of the arch32-packages which are already there.

Note: All libs will be installed under /opt/lib32. Arch64 should not be affected by this. In the case of any problems use pacman -R lib32 to remove all libs.

Attention: Never try to install all libs with pacman -S lib32.

And do not install any arch32-package. lib32-* packages are made to run bin32-* packages

Packages

32bit packages can now be found in the [multilib]-repository. You will need to add this repository before downloading any 32bit lib.

Installation

You will always need to install lib32-glibc in order to execute 32-bit-programs. It might be necessary to fake the output of uname. Use the package linux32 for this.

Some c++-programs also need lib32-libstdc++5.

OpenGL-Applications

Programs using OpenGL need one of the following libs which fits to your graphicscard:

  • nVidia: lib32-nvidia-utils
  • ATI: lib32-catalyst-utils
  • DRI: (all opensource-drivers like those for Intel-chips) lib32-libgl-dri

QT-Applications

Programs using QT should run at once after installing lib32-qt.

Alsa & OpenAL

For Alsa and OpenAL-Support you have to install lib32-alsa-lib and lib32-openal.

Tested Applications

  • Doom3, Enemy-Territory, Unreal Tournament
    • lib32-nvidia-utils, lib32-alsa-lib, [lib32-libstdc++5, lib32-openal]
  • Diablo II, Warcraft III
    • lib32-nvidia-utils, lib32-alsa-lib, [For Warcraft: lib32-openal]
  • Opera
    • lib32-qt
  • Google Earth
    • lib32-qt lib32-nvidia-utils lib32-gtk2 lib32-curl

Note : Google Earth seems to work here without lib32-qt

Environment Variables

Some useful Env Variables when running 32bit-applications without chroot:

For gtk2 input modules and such

GTK_PATH=/opt/lib32/usr/lib/gtk-2.0/

For pango (lib32-pango includes these config files)

PANGO_RC_FILE="/opt/lib32/config/pango/pangorc"

Iconv (conversion from 'XXXXXXX' is not supported or cannot convert from X to Y -errors)

GCONV_PATH=/opt/lib32/usr/lib/gconv

Library paths without having them in /etc/ld.so.conf

LD_LIBRARY_PATH="/opt/lib32/usr/lib/:/opt/lib32/lib/:$LD_LIBRARY_PATH"

GDK stuff (GdkPixbuf warnings errors criticals, lib32-gtk2 includes the file)

GDK_PIXBUF_MODULE_FILE="/opt/lib32/config/gdk/gdk-pixbuf.loaders"