32 位软件包指南
Arch 软件包指南
32 位 – CLR – CMake – 交叉编译 – DKMS – Eclipse 插件 – Electron – 字体 – Free Pascal – GNOME – Go – Haskell – Java – KDE – 内核模块 – Lisp – Meson – MinGW – Node.js – 非自由软件 – OCaml – Perl – PHP – Python – R – Ruby – Rust - 安全 – Shell – VCS – Web – Wine
传统的 32 位 软件可以在其他原生架构的机器上构建和安装,例如 x86_64。本文解释了此类软件包的制作和约定。
软件包命名
变量和参数
lib32
在 PKGBUILD 中指定这些 bash 变量,以告知编译器输出 32 位代码
export CFLAGS+=" -m32" export CXXFLAGS+=" -m32" export LDFLAGS+=" -m32" export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
文件放置
确保 lib32 软件包文件不与原生软件包文件冲突,并包含所有必要的文件,例如特定于架构的头文件。例如,如果软件包使用 GNU Autoconf 构建,请指定以下内容给 configure
--program-suffix="-32" \ --lib{exec,}dir=/usr/lib32 \ --includedir=/usr/include/"$pkgbase"32 \ --build=i686-pc-linux-gnu
如果软件包使用 Meson 构建,请指定以下内容给 arch-meson
--cross-file lib32