Сборка из SRPM на CentOS 6.5

Сборка из SRPM на CentOS 6.5

Я пытаюсь скомпилироватьПотрясающийна CentOS 6.5 с использованием rpmbuild. Я нашел SRPM для Fedora Core и пытаюсь пересобрать их на моей установке CentOS, но столкнулся с проблемами зависимостей.

В принципе, хотя я установил более новые версии пакетов, rpmbuildпохоже, не обнаруживает их. Вот пример:

$ rpmbuild --rebuild xcb-util-image-0.3.9-2.fc19.src.rpm 

Installing xcb-util-image-0.3.9-2.fc19.src.rpm
warning: InstallSourcePackage at: psm.c:244: Header V3 RSA/SHA256 Signature, key ID fb4b18e6: NOKEY
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
error: Failed build dependencies:
    pkgconfig(xcb-util) >= 0.3.8 is needed by xcb-util-image-0.3.9-2.el6.x86_64

Но как вы можете здесь видеть, у меня явно xcb-utilустановлена ​​версия > 0.3.8:

$ sudo yum list installed | grep xcb-util                  
xcb-util.x86_64                        0.3.6-1.el6               @UIedited_0/6.5
xcb-util.x86_64                        0.3.9-2.el6               installed

Я попробовал удалить старую версию, xcb-utilно от нее зависит слишком много пакетов.

Аналогичная проблема с созданием потрясающего объекта, когда дело доходит до cmake:

$ rpmbuild --rebuild awesome-3.5.1-2.fc18.src.rpm
Installing awesome-3.5.1-2.fc18.src.rpm
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
error: Failed build dependencies:
    cmake >= 2.8.0 is needed by awesome-3.5.1-2.el6.x86_64
    lua-ldoc is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(libev) is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(xcb-util) >= 0.3.8 is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(xcb-keysyms) >= 0.3.4 is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(xcb-icccm) >= 0.3.8 is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(xcb-image) >= 0.3.0 is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(cairo-xcb) is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(libstartup-notification-1.0) >= 0.10 is needed by awesome-3.5.1-2.el6.x86_64
    pkgconfig(libxdg-basedir) >= 1.0.0 is needed by awesome-3.5.1-2.el6.x86_64
    lua-lgi is needed by awesome-3.5.1-2.el6.x86_64
$ which cmake
/usr/bin/cmake
$ cmake --version
cmake version 2.8.11.2
$ sudo yum list installed | grep cmake
cmake28.x86_64                         2.8.11.2-1.el6            @dell-epel

Так есть ли там yumгуру rpm, которые могут указать мне правильное направление? Я бы предпочел не собирать все из исходников, поэтому я надеялся поработать rpmbuildс SRPM.

решение1

Кажется, в вашей системе установлено несколько версий некоторых пакетов. Если у вас установлен пакет "yum-utils", попробуйте выполнить следующую команду, чтобы удалить старые версии этих пакетов, а затем посмотрите, работает ли rpmbuild:

sudo /usr/bin/package-cleanup --cleandupes

решение2

На случай, если кто-то еще это обнаружит, мне не удалось заставить это работать, и я не хотел идти по пути компиляции всех зависимостей из исходного кода, поэтому в итоге я отказался от этой затеи в пользу того, чтобы заставить свою сборку работать на Fedora 20 и установить Awesome из официальных репозиториев.

Связанный контент