web-dev-qa-db-ja.com

Centos:yum install libevent-develがcompat-libeventと競合する

Logstashなどをインストールしたいのですが、試してみると:

# yum install libevent-devel

以下のエラーが発生します:

Transaction Check Error:
  file /usr/bin/event_rpcgen.py from install of libevent-devel-2.0.12-1.rhel6.i686 conflicts with file from package compat-libevent14-1.4.13-1.rhel6.i686
  file /usr/lib/libevent_core.a from install of libevent-devel-2.0.12-1.rhel6.i686 conflicts with file from package compat-libevent14-1.4.13-1.rhel6.i686
  file /usr/lib/libevent_core.so from install of libevent-devel-2.0.12-1.rhel6.i686 conflicts with file from package compat-libevent14-1.4.13-1.rhel6.i686
  file /usr/lib/libevent_extra.a from install of libevent-devel-2.0.12-1.rhel6.i686 conflicts with file from package compat-libevent14-1.4.13-1.rhel6.i686
  file /usr/lib/libevent_extra.so from install of libevent-devel-2.0.12-1.rhel6.i686 conflicts with file from package compat-libevent14-1.4.13-1.rhel6.i686

このエラーの競合を解決するためのアドバイスを教えてください。

# rpm -qi compat-libevent14
Name        : compat-libevent14            Relocations: (not relocatable)
Version     : 1.4.13                            Vendor: (none)
Release     : 1.rhel6                       Build Date: Mon 19 Sep 2011 04:50:45 PM WIT
Install Date: Fri 28 Oct 2011 10:10:03 PM WIT      Build Host: koji-sl6-i386-pg91
Group       : System Environment/Libraries   Source RPM: compat-libevent14-1.4.13-1.rhel6.src.rpm
Size        : 427200                           License: BSD
Signature   : DSA/SHA1, Mon 19 Sep 2011 04:50:45 PM WIT, Key ID 1f16d2e1442df0f8
URL         : http://monkey.org/~provos/libevent/
Summary     : Abstract asynchronous event notification library
Description :
The libevent API provides a mechanism to execute a callback function
when a specific event occurs on a file descriptor or after a timeout
has been reached. libevent is meant to replace the asynchronous event
loop found in event driven network servers. An application just needs
to call event_dispatch() and can then add or remove events dynamically
without having to change the event loop.
5
user2253805

compat-libevent14の既存のバージョンは PostgreSQL yumリポジトリ からのものです。 compat-libevent14libevent-develの競合について バグオープン があります。そして another one

PostgreSQLリポジトリを有効にする必要があると想定すると、compat-libevent14を削除してPostgreSQLリポジトリからlibeventlibevent-develをインストールするのが最善の策です。これには、compat-libevent14を必要とするパッケージをすべて削除する必要があるため、これが妥当な行動方針であるかどうかを判断できるのはあなただけです。

これがうまくいかない場合、通常、(a)PostgreSQL yumリポジトリのメンテナに連絡して、それらのバグを解決する計画があるかどうかを確認するか、(b)問題を自分で修正して、独自のパッケージをロールします。

5
larsks

compat-libevent14またはPostgreSQLリポジトリで提供されているlibeventのバージョンが必要ない場合は、PostgreSQLリポジトリファイルに除外ディレクティブを追加できます。

/etc/yum.repos.d/pgdg-93-centos.repoでは、[pgdg93]セクションを編集して、次の行を追加できます。

exclude=*libevent*

必ずrepoファイルの正しいセクションに追加してください。これにより、PostgreSQLリポジトリからlibeventパッケージが除外され、パッケージのインストールでパッケージの競合が発生しなくなります。

2
lotia