Building 32-bit packages on a 64-bit system
How to build i686 packages on a x86_64 system. This article focuses on configuration of package building tools. This used to be complicated (actually, it was pretty simple, but there were more steps), but as of libretools 20160418, it's really simple.
1 Create the chroot
All you need to do is to install archlinux32-keyring and create the 32-bit chroot with librechroot :
# pacman -S archlinux32-keyring # librechroot -A i686 -n my-i686-chroot-name make
2 Using the chroot
After this, you can compile your packages for i686 on x86_64 machines:
# libremakepkg # for x86_64 # libremakepkg -n my-i686-chroot-name # for i686
3 Recreate chroots
Delete all chroots and create chroots for both architectures.
# rm -rf /var/lib/archbuild # or whatever CHROOTDIR is set to in your /etc/libretools.d/chroot.conf or ~/.config/libretools/chroot.conf # librechroot make # for x86_64 # librechroot -A i686 -n my-i686-chroot-name make # for i686
4 See also
- Cross-toolchain and distcc contains information specific to compilation.