Arch 打包準則
32 位 – CLR – CMake – Cross – DKMS – Eclipse – Electron – Font – Free Pascal – GNOME – Go – Haskell – Java – KDE – 內核模塊 – Lisp – Meson – MinGW – Node.js – Nonfree – OCaml – Perl – PHP – Python – R – Ruby – Rust – VCS – Web – Wine
可以在不同架構的計算機(例如 x86_64)上構建和安裝老式 32 位軟體。本文介紹了此類軟體包的打包和約定。
軟體包命名
-
軟體包描述 應與原生版本的相區別,即
pkgdesc+=" (32-bit)"
。
變量和參數
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