Як провести паралельний make з debuild?


17

Я намагаюся скласти пакет програмного забезпечення, яке я написав (спільно). Я використовую

debuild -i -us -uc -b 

І в принципі це прекрасно працює. Щоб скоротити час компіляції, я хотів би переграти запуск паралельно (як це роблю make -j4, наприклад, запуск ). Я знайшов у Інтернеті кілька локацій, які пропонують таке:

debuild -eDEB_BUILD_OPTIONS="parallel=4" -us -uc -b
debuild -j4 -us -uc -b

Інший сайт запропонував додати якийсь код до debian/rulesфайлу, який в основному задається

MAKEFLAGS += -j4

Однак, схоже, жодне з них не працює. Я щось пропустив? чи я повинен щось змінити в налаштуваннях автоконфігурації / автоматичного виправлення джерела?

Відповіді:


16

Це повинно бути включено в debian / правила. Якщо в пакеті використовується dh, є такий рядок у debian / правила:

dh $@

Змініть це на

dh $@ --parallel

Тоді ваші команди будуть працювати, принаймні DEB_BUILD_OPTIONS = "паралельний = 4"


4
Просто не забудьте експортувати, DEB_BUILD_OPTIONSщоб зробити всі інструменти щасливими.
rbrito

Чи не --parallelпараметр більше не потрібен, просто встановіть змінну середовища.
gps

8

З дебхелером 10 вам більше не потрібно вводити --parallelопцію в debian/rules; тепер він запускає паралельні складання за замовчуванням. Дивіться примітки до випуску

Відповідь, отже, просто встановити вміст debian/compatдо 10та оновити debhelperверсію >=10в debian/control.


5

Я рекомендую використовувати DEB_BUILD_OPTIONSзмінну середовища, як описано в розділі 4.9.1 Посібника з політик Debian.

DEB_BUILD_OPTIONS='parallel=4' debuild -i -us -uc -b
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.