4

I am trying to compile the latest version of XBMC on CentOS 6 x64 but on ./configure I get:

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

I tried compiling the taglib coming with XBMC and also downloading the latest version from github. Both compile just fine but the error remains.

[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

Any ideas how to fix that?

UPDATE
@slm

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

These are the only options configure help lists regarding taglib:

 TAGLIB_CFLAGS  C compiler flags for TAGLIB, overriding pkg-config
 TAGLIB_LIBS linker flags for TAGLIB, overriding pkg-config
Gilles 'SO- stop being evil'
  • 807,993
  • 194
  • 1,674
  • 2,175
Jim
  • 141
  • 1
  • 5

5 Answers5

2
  1. Remove "taglib 1.6" installed via yum.
  2. Compile and install taglib from Github in /usr.

    cmake -DCMAKE_INSTALL_PREFIX=/usr/
    
  3. Edit the xbmc configure script by changing ac_status=$? to ac_status=0 below the tests for a non-zero length of $TAGLIB_LIBS and $TAGLIB_CFLAGS:

    if test -n "$TAGLIB_CFLAGS"; then
      ac_status=0
    …
    if test -n "$TAGLIB_LIBS"; then
      …
      ac_status=0
    
Gilles 'SO- stop being evil'
  • 807,993
  • 194
  • 1,674
  • 2,175
baniak
  • 21
  • 2
  • In CentOS 6.4 i had to manually install cmake 2.8 as taglib 1.8 won't build with cmake 2.6 with some strange and cryptic errors: `CMake Error at CMakeLists.txt:98 (file): file does not recognize sub-command COPY` – glebtv Jun 28 '13 at 19:40
1

Do you have the taglib and taglib-devel libraries installed. You typically need the -devel of a library in order to compile against it.

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

Install like this:

% yum install taglib-devel

Also notice that taglib is installed under /usr/local. Depending on your system this area may not be on the path for applications to look for it, so the configure command you're using to build the makefiles for xbmc may require you specify this location with a --taglib=... type of switch.

Check with configure --help for more info when building xbmc for the specific value.

slm
  • 363,520
  • 117
  • 767
  • 871
  • Read the readme for xbmc, I think you need taglib > 1.8. – slm Jan 31 '13 at 16:31
  • I updated the post. I know that I need 1.8 but the repos dont have it. And the manual build doesn't work. – Jim Jan 31 '13 at 16:33
0

I'm not quite sure whether others had the same problem or not. I'm running Centos 6.5. I just finished building XBMC 12.3 on it. There is no need to remove 1.6. But after installing 1.8 from source, I had to modify the configure script as Giles mentioned and I also had to modify the Makefile for LIBS variable to add -L(Taglib1.8 library path) -ltag -ltag_c. Then, the compiling and linking works well.

Ramesh
  • 38,687
  • 43
  • 140
  • 215
0

in my case I'm using Centos 7 and the problem is definitly the version of taglib.

In the configure file we have something like this.

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

Which give me

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

In the configure script manually changing all 1.9 requirements to 1.8 makes it pass.

But be aware that if version 1.9 is expected their should be good reasons so perhaps this will break other peaces of code elsewhere.

Rui F Ribeiro
  • 55,929
  • 26
  • 146
  • 227
0

I've seen the same problem, and the problem is tag-lib version. You have 1.6 and it requires 1.8. (check configure log). I cannot give you a solution cause I did not try anything, but "maybe", chnaging tag-lib version requirement solves compilation problem (not sure if 1.8 is really needed. Some XBMC developer should answer that.)

Kazark
  • 969
  • 3
  • 12
  • 31
Arnau
  • 1