CentOS 6.5のSRPMでビルド

CentOS 6.5のSRPMでビルド

コンパイルしようとしています。素晴らしいCentOS 6.5で作業していますrpmbuild。 Fedora Core用のSRPMを見つけて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それに依存するパッケージが多すぎます。

Build Awesomeに似た質問は次のとおりです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私はソースからすべてをビルドしたくないので、rpmbuildSRPMを使用できるようにしたいです。

答え1

システムにいくつかのパッケージの複数のバージョンがインストールされているようです。 "yum-utils"パッケージがインストールされている場合は、次のコマンドを使用してそのパッケージの以前のバージョンを削除し、rpmbuildが機能していることを確認してください。

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

答え2

他の人がこれを発見した場合に備えて、私はそれを動作させることができず、ソースからすべての依存関係をコンパイルする方法を望んでいなかったので、最終的にその努力を放棄し、代わりにFedoraで動作するようにビルドを得ました。 20公式リポジトリのInstall Awesomeで実行を開始しました。

関連情報