Как кросс-компилировать существующий пакет deb от 64-битной до 32-битной архитектуры


8

Я восстановил пакет deb с пользовательским патчем для моего компьютера, который является 64-битным компьютером. Я сделал это с помощью:

sudo apt-get -b source [package name]

Теперь мой вопрос: как сделать это аналогичным образом, чтобы кросс-компилировать один и тот же пакет для 32-битных машин?

Спасибо николай


3
Есть ли возможность загрузки на Launchpad? Launchpad предоставляет серверы сборки, которые могут создавать пакеты для вас в любой архитектуре, которую вы хотите.
Натан Осман

Ответы:


3

В большинстве случаев невозможно выполнить кросс-компиляцию 32-битного пакета из 64-битного deb-пакета, если пакет содержит какие-либо исходные файлы или библиотеки.

Вам нужно будет переупаковать с помощью 32-битных библиотек и перекомпилировать исходный код.

Мое предложение было бы разделить вашу компиляцию и упаковку - делайте вашу 32-битную работу в отдельной 32-битной виртуальной машине.

Возможно, лучше было бы установить LaunchPad PPA и позволить Launchpad автоматически выполнять компиляцию как для 64-битной, так и для 32-битной архитектуры.


2

Вы можете использовать среду кросс-компиляции и / или некоторые вспомогательные инструменты.

Лично я за xdeb он меня никогда не подводил!

Это руководство: Использование Xdeb поможет вам настроить среду Xdeb и узнать, как использовать инструменты.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.