The inclusion of MacPorts’ taglib fails on OSX. See the below discussions about this problem from September.
kfilemetadata.log.gz
Description: GNU Zip compressed data
Begin forwarded message: > From: Marko Käning <mk-li...@email.de> > Subject: taglib inclusion on OSX > Date: 13 Sep 2014 22:54:07 GMT+2 > To: j...@jriddell.org, handa.v...@gmail.com > Cc: bhus...@gmail.com > > Hi Jonathan & Vishesh, > > Ben suggested to send our below conversation to you guys, as I am seeing > problems > with including taglib on OSX for plasma-mediacenter, but also for the project > KFileMetaData maintained by you two. > > Greets, > Marko > > P.S.: Separately I have already contacted PMC’s Bhushan Shah, who asked me to > test building PMC while at Akademy, which I could do after some patching. > We need a solution which does not require patching taglib’s sources. > > >> From: Ben Cooksley <bcooks...@kde.org> >> Subject: Re: "Plasma Media Center" - Build Success on OSX >> Date: 13 Sep 2014 22:09:33 GMT+2 >> To: Marko Käning <mk-li...@email.de> >> >> On Sun, Sep 14, 2014 at 6:06 AM, Marko Käning <mk-li...@email.de> wrote: >>> Hi Ben, >> >> Hi Marko, >> >>> >>> I am forwarding what I wrote to Bhushan earlier today. >>> >>> I wonder whether you might have a hint as to what is going on here. >>> On MacPorts exists the an non-patched taglib version 1.9.1. >>> >>> Although I patched it regarding the pc files locally I didn’t succeed >>> building plasma-mediacenter without patching is as well. >>> >>> This problem occurs just as well for kfilemetadata, where I also had >>> to add /opt/local/include to the include directories. >>> >>> It seems as if TAGLIB_INCLUDES is not generated from any of taglib's >>> pc files, right? >> >> TAGLIB_INCLUDES will probably be set by a FindTaglib.cmake or >> TaglibConfig.cmake file - either of which could potentially use the >> pkgconfig *.pc files provided by Taglib. >> >> This issue is a fairly routine case of include statements being >> inconsistent with where things are being installed. It only works for >> him and others because Taglib is usually installed in /usr on Linux >> (and if it isn't there, it probably co-exists with kdelibs/frameworks >> which add the $prefix/include directory to the include_directories). >> >> The proper way to fix this is to either: >> 1) Adjust the PMC code to include the taglib headers without the taglib/ >> prefix. >> 2) Adjust the CMake code which locates taglib to add the >> $prefix/include directory in addition to the $prefix/include/taglib >> directory. >> >>> >>> Greets, >>> Marko >> >> Thanks, >> Ben > > > >> From: Marko Käning <mk-li...@email.de> >> Subject: Fwd: "Plasma Media Center" - Build Success on OSX >> Date: 13 Sep 2014 20:06:34 GMT+2 >> To: Ben Cooksley <bcooks...@kde.org> >> >> Hi Ben, >> >> I am forwarding what I wrote to Bhushan earlier today. >> >> I wonder whether you might have a hint as to what is going on here. >> On MacPorts exists the an non-patched taglib version 1.9.1. >> >> Although I patched it regarding the pc files locally I didn’t succeed >> building plasma-mediacenter without patching is as well. >> >> This problem occurs just as well for kfilemetadata, where I also had >> to add /opt/local/include to the include directories. >> >> It seems as if TAGLIB_INCLUDES is not generated from any of taglib's >> pc files, right? >> >> Greets, >> Marko >> >> >> >> Begin forwarded message: >> >>> From: Marko Käning <mk-li...@email.de> >>> Subject: "Plasma Media Center" - Build Success on OSX >>> Date: 13 Sep 2014 15:21:57 GMT+2 >>> To: bhus...@gmail.com >>> >>> Hi Bhushan, >>> >>> just for your information, once I appended my local prefix here: >>> --- >>> message(STATUS "TAGLIB_INCLUDES = ${TAGLIB_INCLUDES}") >>> >>> include_directories( >>> ${TAGLIB_INCLUDES} >>> /opt/local/include >>> ) >>> --- >>> I was able to ***successfully*** build PMC on OSX. :-) >>> For that to work I had to disable the deps to baloo and mockcpp, >>> of course. :) >>> >>> Well, checking the contents of TAGLIB_INCLUDES - as shown above - I >>> got this: >>> --- >>> TAGLIB_INCLUDES = ;/opt/local/include/taglib >>> --- >>> But your code prepends another taglib subfolder to every file >>> included. >>> >>> This is indeed very weird and I don’t know why this is happening, >>> as the pc files of my current taglib installation do NOT have that >>> path appended, but taglib-config tells me otherwise >>> --- >>> $ taglib-config --cflags >>> -I/opt/local/include/taglib >>> >>> $ grep Cflags /opt/local/lib/pkgconfig/taglib.pc >>> Cflags: -I/opt/local/include >>> --- >>> >>> What are you seeing on your Linux system here? >>> >>> (Actually I have manipulated those Cflags settings myself locally, >>> as version 1.9.1 actually has “taglib” appended. See below! >>> Looks like those changes in the pc files aren’t enough to make this >>> work. I haven’t dived into the taglib-config code now, I must say.) >>> >>> I am puzzled and wonder what’s going on here… Has taglib messed up >>> or is there some CMake problem in KDE’s build system here? >>> >>> Greets, >>> Marko >>> >>> >>> P.S.: BTW, I've run into the same problem with kfilemetadata - now that >>> I had to install taglib on my OSX/CI system. :-/ >>> That’s why I am interested in finding a solution for this little, >>> but disturbing issue. :-) >>> So, please keep me posted. >>> >>> >>> >>> >>> --------------------------------------------------------------------------------------------- >>> $ git diff master >>> diff --git a/bindings/c/taglib_c.pc.cmake b/bindings/c/taglib_c.pc.cmake >>> index 61764fc..5cab822 100644 >>> --- a/bindings/c/taglib_c.pc.cmake >>> +++ b/bindings/c/taglib_c.pc.cmake >>> @@ -9,4 +9,4 @@ Description: Audio meta-data library (C bindings) >>> Requires: taglib >>> Version: >>> ${TAGLIB_LIB_MAJOR_VERSION}.${TAGLIB_LIB_MINOR_VERSION}.${TAGLIB_LIB_PATCH_VERSION} >>> Libs: -L${LIB_INSTALL_DIR} -ltag_c >>> -Cflags: -I${INCLUDE_INSTALL_DIR}/taglib >>> +Cflags: -I${INCLUDE_INSTALL_DIR} >>> diff --git a/taglib.pc.cmake b/taglib.pc.cmake >>> index 909b8fc..d74a163 100644 >>> --- a/taglib.pc.cmake >>> +++ b/taglib.pc.cmake >>> @@ -8,4 +8,4 @@ Description: Audio meta-data library >>> Requires: >>> Version: >>> ${TAGLIB_LIB_MAJOR_VERSION}.${TAGLIB_LIB_MINOR_VERSION}.${TAGLIB_LIB_PATCH_VERSION} >>> Libs: -L${LIB_INSTALL_DIR} -ltag >>> -Cflags: -I${INCLUDE_INSTALL_DIR}/taglib >>> +Cflags: -I${INCLUDE_INSTALL_DIR} >> >
_______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel