dpkg: можно ли разбить $ {shlibs: Depends}?

В Ubuntu почти все принтеры All-In-One не нуждаются в дополнительных драйверах для установки. Драйверы автоматически загружаются следующими приложениями:

Вы можете запустить сканер с помощью принтеров All-In-One

и принтера с приложением Принтеры [ ! d5]

0
задан 15 July 2017 в 20:06

4 ответа

Вы можете сделать это, указав соответствующие аргументы в dpkg-shlibdeps; в вашем случае что-то вроде

dpkg-shlibdeps -dDepends -emain_binary \ -dRecommends -esolib1.so -esolib2.so ...

Затем используйте ${shlibs:Depends} и ${shlibs:Recommends} в соответствующих местах.

Если вы используете переопределения dh, используйте

override_dh_shlibdeps: dpkg-shlibdeps ...

В пакете Wine вы найдете (несколько более сложный) пример. Это снова запускает dh_shlibdeps, потому что его переопределение dpkg-shlibdeps обрабатывает только один пакет.

0
ответ дан 18 July 2018 в 10:14

На основании ответа Стивена Китта я сделал следующее переопределение:

override_dh_shlibdeps: dh_shlibdeps -X.so dh_shlibdeps -- -dRecommends -pshlibs-

Первый создает $ {shlibs: Depends} для основного двоичного файла, исключая файлы .so, а второй создает $ {shlibs-: Рекомендует}.

Обратите внимание, что мне пришлось калечить префикс var на «shlibs-», чтобы второй вызов dpkg-shlibdeps не перезаписывал результаты первого вызова. Похоже, что просто указать новый суффикс с -d недостаточно, чтобы предотвратить переписывание: до генерации $ {shlibs: рекомендует] он по какой-то причине удалит все $ {shlibs: *}. Но приведение префикса в -p устраняет проблему.

0
ответ дан 18 July 2018 в 10:14

Вы можете сделать это, указав соответствующие аргументы в dpkg-shlibdeps; в вашем случае что-то вроде

dpkg-shlibdeps -dDepends -emain_binary \ -dRecommends -esolib1.so -esolib2.so ...

Затем используйте ${shlibs:Depends} и ${shlibs:Recommends} в соответствующих местах.

Если вы используете переопределения dh, используйте

override_dh_shlibdeps: dpkg-shlibdeps ...

В пакете Wine вы найдете (несколько более сложный) пример. Это снова запускает dh_shlibdeps, потому что его переопределение dpkg-shlibdeps обрабатывает только один пакет.

0
ответ дан 24 July 2018 в 19:32
  • 1
    Благодаря! Выглядит довольно просто. :) Возможно, есть опечатка, вы хотели сказать ${shlibs:Recommends} вместо ${depends:Recommends}. – stsp 16 July 2017 в 00:39
  • 2
    В самом деле, спасибо, я исправил ответ. – Stephen Kitt 16 July 2017 в 09:54

На основании ответа Стивена Китта я сделал следующее переопределение:

override_dh_shlibdeps: dh_shlibdeps -X.so dh_shlibdeps -- -dRecommends -pshlibs-

Первый создает $ {shlibs: Depends} для основного двоичного файла, исключая файлы .so, а второй создает $ {shlibs-: Рекомендует}.

Обратите внимание, что мне пришлось калечить префикс var на «shlibs-», чтобы второй вызов dpkg-shlibdeps не перезаписывал результаты первого вызова. Похоже, что просто указать новый суффикс с -d недостаточно, чтобы предотвратить переписывание: до генерации $ {shlibs: рекомендует] он по какой-то причине удалит все $ {shlibs: *}. Но приведение префикса в -p устраняет проблему.

0
ответ дан 24 July 2018 в 19:32

Другие вопросы по тегам:

Похожие вопросы: