Как получить оригинальную версию библиотеки / пакета из версии пакета rpm?

452
Mariusz

Я использую Centos 7, и мне нужно знать, какая у меня версия Xdmx. rpm -qaи yum list installedверните версию пакета rpm, которая, я думаю, отличается от оригинальной версии Xdmx.

$yum list installed | grep Xdmx xorg-x11-server-Xdmx.x86_64 1.15.0-7.el7 @base    $rpm -qa | grep Xdmx xorg-x11-server-Xdmx-1.15.0-7.el7.x86_64 

1.15.0-7.el7версия пакета rpm Как я могу получить версию Xdmx от этого? Я прочитал Xdmxруководство по эксплуатации и не могу найти способ проверить Xdmxверсию.

Я не уверен, правильно ли я понимаю создание пакета rpm, поэтому я хотел бы уточнить это. Xdmx является лишь примером, и я хотел бы сейчас общее правило. Xorg является автором Xdmx. Когда программисты Xorg пишут какую-то библиотеку, им все равно, в каком дистрибутиве Linux она будет работать. Код библиотеки универсален и может быть скомпилирован и запущен в любом дистрибутиве Linux, если есть необходимые зависимости. Но большинство пользователей не хотят терять время и не хотят устанавливать библиотеку из исходного кода, они предпочитают скомпилированные пакеты. RPM-пакет содержит информацию о зависимостях, что позволяет автоматически загружать и устанавливать необходимые зависимости для распространения Linux. Я не знаю, есть ли еще какие-то отличия в пакетах rpm, предназначенных для разных дистрибутивов Linux. Позволять' Предполагается, что Fedora и Centos выпустили пакеты rpm для Xdmx 1.0. Есть ли различия между пакетами rpm для Fedora и Centos Xdmx, кроме различий в зависимостях? Может быть, процесс компиляции для Fedora дает другой результат, чем компиляция для Centos? Может быть, поставщики дистрибутивов Linux предоставляют некоторые пользовательские изменения в библиотеке Xdmx? Если зависимости работают должным образом на Centos и Fedora, возможно ли, что Xdmx 1.0 работает правильно на fedora и не работает должным образом на Centos? Есть ли различия между пакетами rpm для Fedora и Centos Xdmx, кроме различий в зависимостях? Может быть, процесс компиляции для Fedora дает другой результат, чем компиляция для Centos? Может быть, поставщики дистрибутивов Linux предоставляют некоторые пользовательские изменения в библиотеке Xdmx? Если зависимости работают должным образом на Centos и Fedora, возможно ли, что Xdmx 1.0 работает правильно на fedora и не работает должным образом на Centos? Есть ли различия между пакетами rpm для Fedora и Centos Xdmx, кроме различий в зависимостях? Может быть, процесс компиляции для Fedora дает другой результат, чем компиляция для Centos? Может быть, поставщики дистрибутивов Linux предоставляют некоторые пользовательские изменения в библиотеке Xdmx? Если зависимости работают должным образом на Centos и Fedora, возможно ли, что Xdmx 1.0 работает правильно на fedora и не работает должным образом на Centos?

1

1 ответ на вопрос

1
Bruno9779

Точное содержимое пакета rpm полностью зависит от сопровождающих.

Rpm может содержать исправления, файлы конфигурации и документы, которых не было в исходном коде.

Чтобы получить точное представление о том, что находится в RPM, вы должны найти SRPM (исходный rpm), соответствующий пакету, и распаковать его с rpm2cpio <rpmname.rpm> | cpio -idmv

Файл .spec содержит точные инструкции по сборке пакета, ссылки на оригинальный исходный код и все задействованные файлы.

Чтобы лучше это понять, советую www.rpm.org/max-rpm/

Это полностью подробное руководство по сборке rpm, и я рекомендую создавать rpms.

Чтобы ответить на другие вопросы: очень вероятно, что rpm Fedora не будет работать в CentOS; главным образом потому, что Centos использует init.d и Fedora systemd (не относится к большинству библиотек).

Вы должны придерживаться rpms из репозиториев (epel и rpmforge предоставят вам большую часть того, что вам может понадобиться) и установки исходного кода; выбирать и смешивать rpms, загруженные через http, - плохая идея, плохая политика и большой источник проблем.

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