32位軟件包打包準則
外觀
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