Skip to main content

Create an armhf pbuilder on aarch64

使用pbuilder 和 qemu-arm-static 搭建armhf pbuilder tgz环境,环境基于debian buster

安装依赖:

sudo apt install pbuilder qemu qemu-user-static pigz

注册 binfmt_misc:

sudo su
echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-static:' > /proc/sys/fs/binfmt_misc/register

配置 /etc/pbuilderrc

MIRRORSITE=https://mirrors.sjtug.sjtu.edu.cn/debian
DEBOOTSTRAPOPTS=(
    '--variant=buildd'
    '--no-check-gpg'
    )
COMPRESSPROG="pigz"
DEBOOTSTRAP=qemu-debootstrap

DEBOOTSTRAP=qemu-debootstrap 是因为pbuilder create 时,deboostrap 完会自动chroot,可想而知架构不同是进不去的,qemu-debootstrap是debian 给qemu写的脚本,就是用来干这个事

sudo dpkg --add-architecture armhf
sudo pbuilder create --debootstrapopts --arch --debootstrapopts armhf --distribution buster --basetgz buster-armhf.tgz
sudo pbuilder --login --basetgz buster-armhf.tgz