RPM5 — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
Строка 70: Строка 70:
 
|}
 
|}
  
== Совместимость форматов ==
+
== Анализ совместимости ==
 +
=== Формат RPM-пакетов ===
 
Форматы RPM4 и RPM5 обратно и прямо совместимы, т.е. пакеты, собранные с помощью RPM4, могут быть установлены при помощи RPM5 и наоборот. Стоит заметить, что RPM5 не поддерживает RPM3, который, однако, поддерживается RPM4. Из пресс релиза RPM5:
 
Форматы RPM4 и RPM5 обратно и прямо совместимы, т.е. пакеты, собранные с помощью RPM4, могут быть установлены при помощи RPM5 и наоборот. Стоит заметить, что RPM5 не поддерживает RPM3, который, однако, поддерживается RPM4. Из пресс релиза RPM5:
 
<pre>
 
<pre>
Строка 76: Строка 77:
 
</pre>
 
</pre>
  
== Совместимость spec-файлов ==
+
=== Формат spec-файлов ===
 
Изменения в формате spec-файлов описаны в [http://docs.unity-linux.org/Talk:Packaging_Guide:Introduction/packaging_tricks_and_tips этом документе], написанном разработчиками Unity Linux при переходе на RPM5.
 
Изменения в формате spec-файлов описаны в [http://docs.unity-linux.org/Talk:Packaging_Guide:Introduction/packaging_tricks_and_tips этом документе], написанном разработчиками Unity Linux при переходе на RPM5.
 +
 +
=== API и ABI ===
 +
Согласно [http://195.19.77.245/tracker/versions/librpm.html этой таблице], API на языке Си (библиотека librpm) претерпел серьезные изменения. ABI также изменился. Таким образом, все приложения, использующие librpm, должны быть пересобраны, а некоторые - и с модификацией исходного кода.
  
 
== Статьи ==
 
== Статьи ==
 
* [http://wiki.linuxformat.ru/index.php/LXF104:Что_за_штука Linux Format, Что за штука... RPM5?]
 
* [http://wiki.linuxformat.ru/index.php/LXF104:Что_за_штука Linux Format, Что за штука... RPM5?]

Версия 11:10, 25 ноября 2011

Целью данного документа является сравнение двух веток развития формата RPM (Redhat Package Manager): RPM версии 4 и RPM версии 5.

История появления RPM5

Краткие сведения по истории возникновения RPM5 можно прочитать в этой статье.

Сравнительный обзор RPM4 и RPM5

Таблица 1. Сравнение RPM4 и RPM5
RPM 4 RPM 5
Версия 4.9.1.2 5.4.4
Опции 73 182
Строки кода 59,432 285,821
Языки С (90.6%)
Perl (4.3%)
Shell (4.3%)
Others (0.8%)
C (77.5%)
Perl (14.3%)
Shell (2.7%)
Others (5.5%)
Коммиты 11347 16352
Баги 851 68
Разработчики 3-5 3-5
Пользователи RHEL
Fedora
CentOS
openSUSE
ALT Linux
Mageia
Mandriva Linux
Unity Linux
Wind River Linux
CAOS Linux
Ark Linux
OpenPKG
LSB Совместим Несовместим (не
поддерживает RPM3)
Сжатие Gzip
Bzip2
Gzip
Bzip2
LZMA
Поддержка
компиляторов
GCC GCC
Sun Studio
Intel C/C++
Поддержка
платформ
Linux Linux
BSD
Solaris
Mac OS X
Cygwin

Информация по RPM4 и RPM5

Таблица 2. Информация по RPM4 и RPM5
RPM 4 RPM 5
Сайт Сайт
Репозиторий Репозиторий
Релизы Релизы
Баги Баги
Коммиты Коммиты
Документация Документация
API API

Анализ совместимости

Формат RPM-пакетов

Форматы RPM4 и RPM5 обратно и прямо совместимы, т.е. пакеты, собранные с помощью RPM4, могут быть установлены при помощи RPM5 и наоборот. Стоит заметить, что RPM5 не поддерживает RPM3, который, однако, поддерживается RPM4. Из пресс релиза RPM5:

Finally, support for the old RPMv3 (LSB) package format was removed to cleanup and simplify the code base. RPM 5, with respect to RPM format packages, now supports RPMv4 format only.

Формат spec-файлов

Изменения в формате spec-файлов описаны в этом документе, написанном разработчиками Unity Linux при переходе на RPM5.

API и ABI

Согласно этой таблице, API на языке Си (библиотека librpm) претерпел серьезные изменения. ABI также изменился. Таким образом, все приложения, использующие librpm, должны быть пересобраны, а некоторые - и с модификацией исходного кода.

Статьи