web-dev-qa-db-ja.com

TAGLIBの問題のため、XBMC12をコンパイルできません

CentOS 6 x64で最新バージョンのXBMCをコンパイルしようとしていますが、./configure私は得る:

checking for TAGLIB... no
configure: error: Could not find a required library. Please see the README for your platform.

XBMCに付属のtaglibをコンパイルし、githubから最新バージョンをダウンロードしてみました。 どちらも正常にコンパイルされますが、エラーは残ります

[root@xbmc xbmc]# find /usr -name libtag*
/usr/local/lib/libtag.a
/usr/local/lib/libtag.so
/usr/local/lib/libtag_c.so.0
/usr/local/lib/libtag.so.1.12.0
/usr/local/lib/libtag.so.1
/usr/local/lib/libtag_c.so
/usr/local/lib/libtag_c.a
/usr/local/lib/libtag_c.so.0.0.0
/usr/lib64/libtag.so
/usr/lib64/libtag_c.so.0
/usr/lib64/libtag.so.1
/usr/lib64/libtag.so.1.6.1
/usr/lib64/libtag_c.so
/usr/lib64/libtag_c.so.0.0.0
/usr/lib/libtag.so
/usr/lib/libtag_c.so.0
/usr/lib/libtag.so.1.12.0
/usr/lib/libtag.so.1
/usr/lib/libtag_c.so
/usr/lib/libtag_c.so.0.0.0

それを修正する方法はありますか?

[〜#〜]更新[〜#〜]
@ slm

Package taglib-devel-1.6.1-1.1.el6.x86_64 already installed and latest version

これらは、taglibに関するヘルプリストを構成する唯一のオプションです。

 TAGLIB_CFLAGS  C compiler flags for TAGLIB, overriding pkg-config
 TAGLIB_LIBS linker flags for TAGLIB, overriding pkg-config
4
Jim
  1. Yum経由でインストールされた「taglib1.6」を削除します。
  2. /usrのGithubからtaglibをコンパイルしてインストールします。

    cmake -DCMAKE_INSTALL_PREFIX=/usr/
    
  3. ゼロ以外の長さのac_status=$?およびac_status=0のテストの下で、$TAGLIB_LIBS$TAGLIB_CFLAGSに変更して、xbmc configureスクリプトを編集します。

    if test -n "$TAGLIB_CFLAGS"; then
      ac_status=0
    …
    if test -n "$TAGLIB_LIBS"; then
      …
      ac_status=0
    
2
baniak

taglibおよびtaglib-develライブラリがインストールされていますか。通常、ライブラリに対してコンパイルするには、ライブラリの-develが必要です。

% yum search taglib
taglib.x86_64 : Audio Meta-Data Library
taglib-devel.x86_64 : Header files, libraries and development documentation for taglib.

次のようにインストールします。

% yum install taglib-devel

taglib/usr/localの下にインストールされていることにも注意してください。システムによっては、この領域がアプリケーションが検索するパス上にない場合があるため、xbmcのconfigureを構築するために使用しているmakefilesコマンドでは、この場所を次のように指定する必要があります。 --taglib=...タイプのスイッチ。

特定の値のxbmcをビルドする際の詳細については、configure --helpで確認してください。

1
slm

他の人が同じ問題を抱えているかどうかはよくわかりません。私は実行していますCentos 6.5。その上にXBMC 12.3を構築し終えたところです。 1.6を削除する必要はありません。しかし、ソースから1.8をインストールした後、Gilesが述べたように、configureスクリプトを変更する必要があり、Makefile for [〜#〜] libs [〜#〜]-L(Taglib1.8 library path) -ltag -ltag_cを追加する変数。次に、コンパイルとリンクがうまく機能します。

0
johnqhu

同じ問題が発生しましたが、問題はtag-libバージョンです。 1.6があり、1.8が必要です。 (構成ログを確認してください)。私は何も試しなかったので解決策を与えることはできませんが、「たぶん」、tag-libバージョン要件を変更するとコンパイルの問題が解決します(1.8が本当に必要かどうかはわかりません。一部のXBMC開発者はそれに答える必要があります)。

0
Arnau

私の場合、Centos 7を使用していますが、問題は間違いなくtaglibのバージョンです。

構成ファイルには、次のようなものがあります。

pkg-config --exists --print-errors "taglib >= 1.9"

それは私に

Requested 'taglib >= 1.9' but version of TagLib is 1.8.0

Configureスクリプトで、1.9の要件をすべて手動で1.8に変更すると、合格になります。

ただし、バージョン1.9が予想される場合は、それが正当な理由であるため、他の場所で他のコードの平和が損なわれる可能性があることに注意してください。

0