Поля зависимостей предоставляют наиболее существенный функционал системы, обеспечивающий автоматическую проверку зависимостей пакетов друг от друга.
Константа |
Значение |
Тип |
Обязательна ли для использования |
RPMTAG_PROVIDENAME |
1047 |
STRING_ARRAY |
Да |
RPMTAG_REQUIREFLAGS |
1048 |
INT32 |
Да |
RPMTAG_REQUIRENAME |
1049 |
STRING_ARRAY |
Да |
RPMTAG_REQUIREVERSION |
1050 |
STRING_ARRAY |
Да |
RPMTAG_CONFLICTFLAGS |
1053 |
INT32 |
Опционально |
RPMTAG_CONFLICTNAME |
1054 |
STRING_ARRAY |
Опционально |
RPMTAG_CONFLICTVERSION |
1055 |
STRING_ARRAY |
Опционально |
RPMTAG_OBSOLETENAME |
1090 |
STRING_ARRAY |
Опционально |
RPMTAG_PROVIDEFLAGS |
1112 |
INT32 |
Да |
RPMTAG_PROVIDEVERSION |
1113 |
STRING_ARRAY |
Да |
RPMTAG_OBSOLETEFLAGS |
1114 |
INT32 |
Опционально |
RPMTAG_OBSOLETEVERSION |
1115 |
INT32 |
Опционально |
Каждое из этих полей существует в рамках триплетов, которые форматируются сходным образом. RPMTAG_REQUIRENAME содержит массив необходимых зависимостей. RPMTAG_REQUIREVERSION содержит массив версий необходимых зависимостей. RPMTAG_REQUIREFLAGS сводит информацию из двух предыдущих полей вместе, указывая битовые флаги, означающие, имеет ли указанный номер версии более младшую версию, равную версию, более старшую версию, чем зависимость.
Флаги показаны в таблице ниже.
Флаг |
Значение |
RPMSENSE_LESS |
0x02 |
RPMSENSE_GREATER |
0x04 |
RPMSENSE_EQUAL |
0x08 |
RPMSENSE_PREREQ |
0x40 |
RPMSENSE_INTERP |
0x100 |
RPMSENSE_SCRIPT_PRE |
0x200 |
RPMSENSE_SCRIPT_POST |
0x400 |
RPMSENSE_SCRIPT_PREUN |
0x800 |
RPMSENSE_SCRIPT_POSTUN |
0x1000 |
RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION и RPMTAG_PROVIDEFLAGS относятся к предоставляемым пакетом возможностям.
RPMTAG_CONFLICTNAME, RPMTAG_CONFLICTVERSION и RPMTAG_CONFLICTFLAGS определяют конфликты.
RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION и RPMTAG_OBSOLETEFLAGS определяют возможности, отменяемые данным пакетом.
Кроме того, в пакете могут быть определены некоторые специальные требования в полях RPMTAG_REQUIRENAME и RPMTAG_REQUIREVERSION.
Эти случаи показаны в таблице ниже.
Имя |
Версия |
Определяет особенность |
Lsb |
1.3 |
Этот пакет следует формату Linux Standards Base для пакетов RPM. |
rpmlib(VersionedDependencies) |
3.0.3-1 |
Пакет содержит зависимости или предварительные требования, которые имеют версии, ассоциированные с данным пакетом. |
rpmlib(PayloadFilesHavePrefix) |
4.0-1 |
Имена файлов содержат префикс “.” , предшествующий именам. |
rpmlib(CompressedFileNames) |
3.0.4-1 |
Пакет использует RPMTAG_DIRINDEXES, |
/bin/sh |
NA |
Определяет командный интерпретатор для запуска инсталляционных скриптов. |
Далее - Нагрузка
Назад - Поля информации о файлах
Содержание