面向 Debian 13 的软件包
在普通的 64 位 Debian 13 系统上运行 ILP32 程序(非官方)。
工作方式
- ILP32 库放在
/usr/libilp32,与系统原有的 64 位库共存:包括 Debian 13 自己的 glibc 2.41 和 GCC 14.2 运行库,以及其他库和 Python 3.13,全部用 Debian 的源代码和 Debian 的编译选项构建。 不修改任何 Debian 自带的软件包。 - 内核软件包(Linux 6.12.114,与 Debian 13 同为 6.12 LTS 系列)使用 Debian 13 的配置,并加上 ILP32 ABI。
- 已在 QEMU 和实机上测试:Raspberry Pi 3 Model B+、ESPRESSObin,以及一块 Cortex-A72 板子。
安装
apt 软件源使用此密钥签名:D572 3B34 0CBE 7C99 2091 8243 9C6A 5E84 1E28 9B20。
wget https://github.com/ilp32-a64/debian-ilp32/releases/download/v2026.11.04/ilp32-a64-archive-keyring_2026.10.24_all.deb
sudo apt install ./ilp32-a64-archive-keyring_2026.10.24_all.deb
sudo apt update
sudo apt install linux-image-ilp32-arm64 ilp32-runtime
sudo reboot
# 可选:编译器与 Python
sudo apt install gcc-aarch64-linux-gnu-ilp32 g++-aarch64-linux-gnu-ilp32
sudo apt install python3-ilp32
详细说明:github.com/ilp32-a64/debian-ilp32。
安装前须知
- 内核没有 Secure Boot 签名,请关闭 Secure Boot。
- 安装
linux-headers-ilp32-arm64后,DKMS 模块会自动重新编译;为 Debian 内核编译的厂商.ko文件无法加载。 - Debian 原有的内核会保留:可以在 GRUB 菜单(UEFI)、extlinux 菜单(U-Boot 板子)或
config.txt(树莓派)中选回。 - Debian 更新内核后,请用
uname -r检查:如果结尾不是-ilp32-arm64,就在启动菜单中选择-ilp32-arm64项,或移除linux-image-arm64,让 Debian 不再自动安装新内核。 - 树莓派:Debian 13 的镜像不会自动扩展根分区(约 2.5 GB),请先扩展。
- Python:pip 只接受
linux_aarch64_ilp32和纯 Python 的 wheel。
这些软件包为非官方版本,与 Debian 无关联。