После сборки пакета для его проверки может быть использована процедура верификации. Кроме того, с помощью опции -bl можно проверить список файлов пакета. Например:
$ rpmbuild -bl /usr/src/redhat/SPECS/jikes.spec Processing files: jikes-1.17-1 error: File not found: /tmp/jikesrpm/usr/bin/jikes error: File not found: /tmp/jikesrpm/usr/doc/jikes-1.17/license.htm error: File not found by glob: /tmp/jikesrpm/usr/man/man1/jikes.1* Provides: jikes RPM build errors: File not found: /tmp/jikesrpm/usr/bin/jikes File not found: /tmp/jikesrpm/usr/doc/jikes-1.17/license.htm File not found by glob: /tmp/jikesrpm/usr/man/man1/jikes.1* |
В этом примере показан вывод диагностики некоторого количества ошибок. Опция -bl проверяет список всех необходимых файлов пакета, расположенных в директории сборки. Из вывода ясно, что пакет не собрался правильно.
В ситуациях, подобных этой, существует два подхода: можно собирать пакет сначала, выполняя все операции, либо воспользоваться опцией --short-circuit для того, чтобы начать сборку с определенной стадии. Это поможет пропустить секции, в которых нет ошибок.
Для верификации полностью собранного пакета используют следующий синтаксис:
$ rpm -Vp /usr/src/redhat/RPMS/i386/jikes-1.17-1.i386.rpm S.5....T /usr/bin/jikes .......T d /usr/doc/jikes-1.17/license.htm ..5....T d /usr/man/man1/jikes.1.gz |
В выводе команды верификации видно, что имеются различия в контрольных суммах MD5 и времени создания некоторых файлов, что может указывать, например, на тот факт, что оригинальный пакет был собран на другой системе с более старой версией дистрибутива Red Hat. В случае, если файлы пакета были изменены вручную после его установки, вывод ошибок будет похожий.
Далее - Раздел 9. Работа со spec-файлом
Назад - Сборка пакета с помощью утилиты rpmbuild
Содержание