Как управлять несколькими зависимостями пакета с помощью checkinstall?

У меня есть пакет, который я создавал с помощью checkinstall какое-то время, и я хотел его автоматизировать (передайте значения в командной строке, а не введя выбор, вставив значение в и т.д..)

Я не уверен, что это ошибка проверки, или нет, но как включить несколько пакетов с помощью командной строки --requires. Кажется, что barf, если я включаю минимальную версию пакета (для exmple --requires="libvte9 (>= 0.28.2)") или несколько пакетов одновременно (например, --requires "libvte9, libc6")

У кого-то был лучший успех с аргументами командной строки для нескольких пакетов? Я что-то делаю неправильно, или это ошибка.

Примечание. Если я запустил script и выбрал параметр "Требуется" (10), и вставьте всю мою строку с несколькими пакетами и минимальными версиями (например, libvte9 (>= 0.28.2), libc6 (>= 2.13)), она работает нормально, она просто кажется включенной в командной строке, которая имеет проблемы. Также это связано с созданием пакета debian с использованием параметра -D.

3 ответа

checkinstall использует , для разделения нескольких пакетов. Что это, запятая, без каких-либо пробелов вокруг нее.


После прочтения Aleks-Daniel Jakimenko-A. ответить, Reallumpi one и сделать несколько тестов в реальной жизни, вот что вам следует сделать:

  • используйте , (запятая) без пробелов, чтобы отделить необходимые пакеты;
  • escape ( и ) скобки при указании версии пакета;
  • escape > (знак большего) при указании версии пакета;

Пример

make && sudo -k checkinstall \
 --pkgsource="https://github.com/raboof/nethogs/" \
 --pkglicense="GPL2" \
 --deldesc=no \
 --nodoc \
 --maintainer="$USER\\<$USER@$HOSTNAME\\>" \
 --pkgarch=$(dpkg \
 --print-architecture) \
 --pkgversion="0.8.1" \
 --pkgrelease="SNAPSHOT" \
 --pkgname=nethogs \
 --requires="libc6 \(\>= 2.4\),libgcc1 \(\>= 1:4.1.1\),libncurses5 \(\>= 5.5-5~\),libpcap0.8 \(\>= 0.9.8\),libstdc++6 \(\>= 4.1.1\),libtinfo5" \
 make install

Выход

*****************************************
**** Debian package creation selected ***
*****************************************
This package will be built according to these values:
0 - Maintainer: [ elopez<elopez@> ]
1 - Summary: [ Net top tool grouping bandwidth per process ]
2 - Name: [ nethogs ]
3 - Version: [ 0.8.1 ]
4 - Release: [ SNAPSHOT ]
5 - License: [ GPL2 ]
6 - Group: [ checkinstall ]
7 - Architecture: [ amd64 ]
8 - Source location: [ https://github.com/raboof/nethogs/ ]
9 - Alternate source location: [ ]
10 - Requires: [ libc6 (>= 2.4),libgcc1 (>= 1:4.1.1),libncurses5 (>= 5.5-5~),libpcap0.8 (>= 0.9.8),libstdc++6 (>= 4.1.1),libtinfo5 ]
11 - Provides: [ nethogs ]
12 - Conflicts: [ ]
13 - Replaces: [ ]
</elopez@>


Вам нужно избежать скобок, например. --requires "package \(= 1.0\)"

HTH

licensed under cc by-sa 3.0 with attribution.