Ports/mipsel/BuildHowto: различия между версиями
Нет описания правки |
|||
Строка 2: | Строка 2: | ||
[[Категория:mipsel]] | [[Категория:mipsel]] | ||
==Настройка сборки пакетов под mipsel на x86== | |||
На основании статьи о настройках для arm: https://www.altlinux.org/Ports/arm/BuildHowto | На основании статьи о настройках для arm: https://www.altlinux.org/Ports/arm/BuildHowto | ||
Строка 8: | Строка 8: | ||
где описаны настройки binfmt_misc под различные платформы, в том числе и под mipsel | где описаны настройки binfmt_misc под различные платформы, в том числе и под mipsel | ||
=== Настраиваем qemu-user и binfmt-misc === | |||
* Устанавливаем пакет: | * Устанавливаем пакет: | ||
Строка 21: | Строка 21: | ||
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /proc/sys/fs/binfmt_misc/register | echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /proc/sys/fs/binfmt_misc/register | ||
==== Если у Вас systemd ==== | |||
Если у Вас достаточно свежий <tt>systemd</tt>, то для того, чтобы настраивать так binfmt-misc при каждой загрузке, достаточно '''от root'а''' прописать эту строчку в какой-нибудь файл в каталоге '''/etc/binfmt.d''', например: | Если у Вас достаточно свежий <tt>systemd</tt>, то для того, чтобы настраивать так binfmt-misc при каждой загрузке, достаточно '''от root'а''' прописать эту строчку в какой-нибудь файл в каталоге '''/etc/binfmt.d''', например: | ||
Строка 26: | Строка 28: | ||
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /etc/binfmt.d/quemu-mipsel-for-hasher.conf | echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /etc/binfmt.d/quemu-mipsel-for-hasher.conf | ||
Чтобы сразу применить это изменение, перезапустите сервис | Чтобы сразу применить это изменение, перезапустите сервис <tt>systemd-binfmt</tt>. | ||
=== Готовим настройки apt === | |||
Нужно создать файлы: | Нужно создать файлы: | ||
Строка 45: | Строка 47: | ||
rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/mipsel Sisyphus/noarch classic | rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/mipsel Sisyphus/noarch classic | ||
=== Запускаем hasher === | |||
Теперь можно создать сборочницу: | Теперь можно создать сборочницу: |
Версия от 11:12, 11 июля 2018
Настройка сборки пакетов под mipsel на x86
На основании статьи о настройках для arm: https://www.altlinux.org/Ports/arm/BuildHowto и статьи https://wiki.gentoo.org/wiki/Embedded_Handbook/General/Compiling_with_qemu_user_chroot где описаны настройки binfmt_misc под различные платформы, в том числе и под mipsel
Настраиваем qemu-user и binfmt-misc
- Устанавливаем пакет:
sudo apt-get install qemu-user-static
- Монтируем файловую систему binfmt_misc(если ещё не примонтирована):
mount -t binfmt_misc none /proc/sys/fs/binfmt_misc
- Регистрируем qemu-mipsel, как интерпретатор mipsel'овских ELF'ов. Для этого нужно выполнить следующую команду от root'а:
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /proc/sys/fs/binfmt_misc/register
Если у Вас systemd
Если у Вас достаточно свежий systemd, то для того, чтобы настраивать так binfmt-misc при каждой загрузке, достаточно от root'а прописать эту строчку в какой-нибудь файл в каталоге /etc/binfmt.d, например:
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/.host/qemu-mipsel:' > /etc/binfmt.d/quemu-mipsel-for-hasher.conf
Чтобы сразу применить это изменение, перезапустите сервис systemd-binfmt.
Готовим настройки apt
Нужно создать файлы:
- apt.conf.mipsel:
Dir::Etc::main "/dev/null"; Dir::Etc::parts "/var/empty"; Dir::Etc::SourceParts "/var/empty"; Dir::Etc::sourcelist "/<путь от корня>/sources.list.mipsel";
- /<путь от корня>/sources.list.mipsel, указывающий на репозиторий для mipsel, например:
rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/mipsel Sisyphus/mipsel classic rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/mipsel Sisyphus/noarch classic
Запускаем hasher
Теперь можно создать сборочницу:
hsh --with-qemu=mipsel --target=mipsel --apt-config=apt.conf.mipsel --initroot-only ~/hasher
Также можно собрать пакет под mipsel, например такой:
hsh -v --with-qemu=mipsel --target=mipsel --apt-config=apt.conf.mipsel ~/hasher bc-1.06-alt4.src.rpm