Я пытаюсь скомпилировать пару Ubuntu Precise Packages. Моя текущая арка amd64, моя цель - armhf. У меня установлен правильный набор инструментов для кросс-компиляции GCC, я правильно использовал этот набор инструментов для предварительной компиляции ядра.
Мне было интересно узнать о зависимостях сборки пакетов, сборка просто получает свои включения из моих обычных пакетов разработчика? Нужно ли делать что-то особенное?
Я выполняю эту команду, на этот раз добавляя арку
dpkg-buildpackage -rfakeroot -aarmhf
ближе к концу сборки, получаю
... File format not recognized
...
make: *** [binary] Error 29
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
Самый простой способ кросс-сборки пакетов - это не кросс-сборка их, а использование всего эмулированного chroot armhf. Используйте pbuilder-dist
или mk-sbuild
, чтобы создать chroot armhf, и просто соберите пакеты в нем.