0. Prerequires Для сборки под ARM с использованием QEmu требуется: - qemu-user-static - чем новее, тем лучше - настроенный hasher >= 1.2.6-alt1 - rpm >= 4.0.4-alt80 - репозиторий под ARM. Можно взять тут: ftp://ftp.altlinux.org/pub/people/kas/arm - ядро с поддержкой binfmt_misc(во всех ядрах в Сизифе есть модуль) 1. Configuring binfmt_misc Настраиваем binfmt_misc: - монтируем файловую систему binfmt_misc(если ещё не примонтирована) # mount -t binfmt_misc none /proc/sys/fs/binfmt_misc - регистрируем qemu-arm, как интерпретатор ARM'овских ELF'ов: # 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:/.host/qemu-arm:" > /proc/sys/fs/binfmt_misc/register Теперь при попытке выполнить ELF для ARM, ядро будет запускать /.host/qemu-arm. Именно по этому пути будет лежать статически собранный qemu-arm внутри чрута, который создаст hasher. 2. APT sources.list Пишем sources.list. Что-то типа: rpm ftp://ftp.altlinux.org/pub/people/kas/arm/sisyphus arm hasher rpm ftp://ftp.altlinux.org/pub/people/kas/arm/patched arm hasher rpm ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus noarch classic Можно записать прямо в /etc/apt/sources.list, но лучше положить в сторонке, и написать отдельный apt.conf, который подсовывать hasher'у. Можно заметить, что репозитория два. В sisyphus попадают пакеты, которые пересобраны из Сизифа "как есть". В patched, пакеты в которые вносились изменения. 3. Hasher Теперь всё готово. Можно использовать hasher: hsh --with-qemu=arm --target=arm --apt-config=/path/to/apt-arm.conf foo.src.rpm -- Regards, Kirill A. Shutemov + Belarus, Minsk + Velesys Ltd, http://www.velesys.com/ + ALT Linux Team, http://www.altlinux.com/