コンパイルしようとしています素晴らしい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
が、それに依存するパッケージが多すぎます。
素晴らしいものを構築する場合も同様の問題があります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 をインストールすることにしました。