32 位軟體包打包準則 - Arch Linux 中文维基

跳至內容

# 32 位軟體包打包準則

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 32-bit package guidelines，最近一次同步於 2023-06-05，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

Arch 打包準則

32 位 – 安全 – CLR – CMake – DKMS – Eclipse – Electron – Free Pascal – GNOME – Go – Haskell – Java – 交叉編譯工具 – KDE – Lisp – Meson – MinGW – 內核模塊 – Node.js – Nonfree – OCaml – Perl – PHP – Python – R – Ruby – Rust – Shell – VCS – Web – Wine – 字體

可以在不同架構的計算機（例如 x86_64）上構建和安裝老式 32 位軟體。本文介紹了此類軟體包的打包和約定。

## 軟體包命名

- 給 32 位版本的軟體包加上前綴 lib32-。

- 給使用 x32 ABI 的軟體包加上後綴 `-x32`。

- 軟體包描述應與原生版本的相區別，即 `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

分類：​

- Arch 打包準則

32 位軟體包打包準則
新增話題