Difference between revisions of "Multilib"

From ArchWiki
Jump to: navigation, search
(Undo revision 293775 by Matklad (talk) everybody-1 knowing what "uncomment" means is still enough not to mention how to actually do it)
(Disabling: "uninstalling multilib" doesn't make sense. you uninstall the _packages_)
 
(20 intermediate revisions by 14 users not shown)
Line 1: Line 1:
[[Category:Arch64]]
 
 
[[Category:Package management]]
 
[[Category:Package management]]
 +
[[es:Multilib]]
 
[[ja:Multilib]]
 
[[ja:Multilib]]
 
[[ru:Multilib]]
 
[[ru:Multilib]]
Enabling the ''multilib'' repository allows the user to run and build 32-bit applications on 64-bit installations of Arch Linux. ''multilib'' creates a directory containing 32-bit instruction set libraries inside {{ic|/usr/lib32/}}, which 32-bit binary applications may need when executed.
+
[[zh-cn:Multilib]]
 +
{{Related articles start}}
 +
{{Related|Install bundled 32-bit system in Arch64}}
 +
{{Related articles end}}
 +
The ''multilib'' repository is an [[official repositories|official repository]] which allows the user to run and build 32-bit applications on 64-bit installations of Arch Linux.  
  
 
== Directory structure ==
 
== Directory structure ==
Line 11: Line 15:
 
== Enabling ==
 
== Enabling ==
  
To use the [[Official_Repositories#multilib|multilib]] repository, uncomment the {{ic|[multilib]}} section in {{ic|/etc/pacman.conf}}:
+
To use the [[Official repositories#multilib|multilib]] repository, uncomment the {{ic|[multilib]}} section in {{ic|/etc/pacman.conf}} (Please be sure to uncomment both lines):
  
 
  [multilib]
 
  [multilib]
 
  Include = /etc/pacman.d/mirrorlist
 
  Include = /etc/pacman.d/mirrorlist
  
You will then need to update the package list by running {{ic|pacman}} with the {{ic|-Syyu}} switch.
+
Then update the package list and upgrade with {{ic|pacman -Syu}}.
 +
 
 +
{{note|Do not just run {{ic|pacman -Sy}}, see [[System maintenance#Partial upgrades are unsupported]].}}
  
 
== Disabling ==
 
== Disabling ==
  
To revert to a pure 64-bit system, uninstalling ''multilib'':
+
To revert to a pure 64-bit system:
  
 
Execute the following command to remove all packages that were installed from ''multilib'':
 
Execute the following command to remove all packages that were installed from ''multilib'':
  
  # pacman -R `LANG=C pacman -Sl multilib | grep installed | cut -d ' ' -f 2`
+
  # pacman -R $(paclist multilib | cut -f1 -d' ')
  
 
If you have conflicts with gcc-libs reinstall the 64-bit versions and try the previous command again:
 
If you have conflicts with gcc-libs reinstall the 64-bit versions and try the previous command again:
Line 35: Line 41:
 
  #Include = /etc/pacman.d/mirrorlist
 
  #Include = /etc/pacman.d/mirrorlist
  
Update your package list by running {{ic|pacman}} with the {{ic|-Syy}} switch.
+
Then update the package list and upgrade with {{ic|pacman -Syu}}.
  
 
== See also ==
 
== See also ==
  
* [[Arch64 FAQ#Multilib Repository - Multilib Project]]
+
* [[Makepkg#Build 32-bit packages on a 64-bit system]]
 +
* [[64-bit FAQ]]
 
* [//mailman.archlinux.org/mailman/listinfo/arch-multilib arch-multilib] mailing list
 
* [//mailman.archlinux.org/mailman/listinfo/arch-multilib arch-multilib] mailing list

Latest revision as of 12:13, 9 April 2016

The multilib repository is an official repository which allows the user to run and build 32-bit applications on 64-bit installations of Arch Linux.

Directory structure

A 64-bit installation of Arch Linux with multilib enabled follows a directory structure similar to Debian. The 32-bit compatible libraries are located under /usr/lib32/, and the native 64-bit libraries under /usr/lib/.

Enabling

To use the multilib repository, uncomment the [multilib] section in /etc/pacman.conf (Please be sure to uncomment both lines):

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

Then update the package list and upgrade with pacman -Syu.

Note: Do not just run pacman -Sy, see System maintenance#Partial upgrades are unsupported.

Disabling

To revert to a pure 64-bit system:

Execute the following command to remove all packages that were installed from multilib:

# pacman -R $(paclist multilib | cut -f1 -d' ')

If you have conflicts with gcc-libs reinstall the 64-bit versions and try the previous command again:

# pacman -S gcc-libs base-devel

Comment out the [multilib] section in /etc/pacman.conf:

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

Then update the package list and upgrade with pacman -Syu.

See also