Перестройте исходный пакет RHEL (SRPM) для Libreoffice - не упакованы ли зависимости сборки? - PullRequest
0 голосов
/ 28 февраля 2020

У меня система под управлением RHEL 8.1. Это включает в себя упакованную версию LibreOffice:

% rpm -qi libreoffice-base
Name        : libreoffice-base
Epoch       : 1
Version     : 6.0.6.1
Release     : 19.el8
Architecture: x86_64
Install Date: Fri 21 Feb 2020 05:16:08 PM GMT
Group       : Unspecified
Size        : 7511388
License     : (MPLv1.1 or LGPLv3+) and LGPLv3 and LGPLv2+ and BSD and (MPLv1.1 or GPLv2 or LGPLv2 or Netscape) and Public Domain and ASL 2.0 and MPLv2.0 and CC0
Signature   : RSA/SHA256, Tue 20 Aug 2019 02:38:29 PM BST, Key ID 199e2f91fd431d51
Source RPM  : libreoffice-6.0.6.1-19.el8.src.rpm
[etc]

Я бы хотел перестроить этот RPM-пакет из исходного пакета. Поэтому я перешел на страницу загрузки Red Hat https://access.redhat.com/downloads/content/libreoffice-base/6.0.6.1-19.el8/x86_64/fd431d51/package, к которой, к сожалению, для входа требуется логин, и загрузил исходный пакет libreoffice-6.0.6.1-19.el8.src.rpm. Затем я установил исходный пакет с rpm -Uvh, как обычно, и он создал файлы в каталогах SPECS и SOURCES в моем каталоге сборки RPM.

Затем, как обычно, я начал его собирать:

% cd SPECS
% rpmbuild -ba libreoffice.spec
error: Failed build dependencies:
        bsh is needed by libreoffice-1:6.0.6.1-19.el8.x86_64
        glm-devel is needed by libreoffice-1:6.0.6.1-19.el8.x86_64
        gpgmepp-devel is needed by libreoffice-1:6.0.6.1-19.el8.x86_64
        [etc]

Не удивительно, я не ожидал, что все зависимости сборки уже присутствуют. Поэтому я пошел устанавливать их, начиная с bsh:

% sudo dnf -y install bsh
Updating Subscription Management repositories.
Last metadata expiration check: 0:39:20 ago on Fri 28 Feb 2020 09:39:22 AM GMT.
No match for argument: bsh
Error: Unable to find a match: bsh

Теперь я немного озадачен. Пакет bsh требуется для сборки libreoffice-base, который является основным пакетом, но bsh не упакован? Я надеюсь, что есть что-то очевидное, что мне здесь не хватает Альтернативой может быть то, что RHEL не является хостингом, что очень удручает.

Ответы [ 2 ]

1 голос
/ 06 марта 2020

Включите репозиторий EPEL, а затем просто:

dnf install mock
mock -r epel-8-x86_64 libreoffice-6.0.6.1-19.el8.src.rpm

подождите несколько часов и все готово.

0 голосов
/ 28 февраля 2020

Нет гарантии, что эти зависимости доступны в официальных репозиториях. Вы должны искать их. В этом случае я обнаружил bsh в хранилище centos7-os . Я полагаю, вы должны найти их в вашем redhat7-os хранилище. Вы уверены, что все ваши репозитории включены? (Остерегайтесь проблем с лицензией на Redhat).

edit: вы можете найти его, например, здесь: http://ftp.riken.jp/Linux/centos/7/os/x86_64/Packages/bsh-1.3.0-29.el7.noarch.rpm

...