Bug 296423

Summary: Amarok fails to compile with taglib from master
Product: [Frameworks and Libraries] taglib Reporter: Christoph Feck <cfeck>
Component: generalAssignee: Scott Wheeler <wheeler>
Status: RESOLVED FIXED    
Severity: normal CC: amarok-devel, lalinsky
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Include tmap.h to fix compile of Amarok

Description Christoph Feck 2012-03-20 10:58:36 UTC
Since the recent merge in taglib, the Amarok application fails to compile. Errors:

> In file included from /local/git/extragear/multimedia/amarok/shared/MetaReplayGain.cpp:29:0:
> /local/kde4/include/taglib/textidentificationframe.h:39:13: error: 'Map' does not name a type
> /local/kde4/include/taglib/textidentificationframe.h:195:20: error: 'KeyConversionMap' does not name a type
> In file included from /local/git/extragear/multimedia/amarok/shared/MetaReplayGain.cpp:31:0:
> /local/kde4/include/taglib/fileref.h:92:25: warning: 'class TagLib::FileRef::FileTypeResolver' has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor]
> make[2]: *** [src/CMakeFiles/amaroklib.dir/__/shared/MetaReplayGain.o] Error 1
> make[2]: Target `src/CMakeFiles/amaroklib.dir/build' not remade because of errors.
> make[1]: *** [src/CMakeFiles/amaroklib.dir/all] Error 2
> In file included from /local/git/extragear/multimedia/amarok/shared/MetaReplayGain.cpp:29:0:
> /local/kde4/include/taglib/textidentificationframe.h:39:13: error: 'Map' does not name a type
> /local/kde4/include/taglib/textidentificationframe.h:195:20: error: 'KeyConversionMap' does not name a type
> In file included from /local/git/extragear/multimedia/amarok/shared/MetaReplayGain.cpp:31:0:
> /local/kde4/include/taglib/fileref.h:92:25: warning: 'class TagLib::FileRef::FileTypeResolver' has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor]
> make[2]: *** [utilities/collectionscanner/CMakeFiles/amarokcollectionscanner.dir/__/__/shared/MetaReplayGain.o] Error 1
> make[2]: Target `utilities/collectionscanner/CMakeFiles/amarokcollectionscanner.dir/build' not remade because of errors.
> make[1]: *** [utilities/collectionscanner/CMakeFiles/amarokcollectionscanner.dir/all] Error 2
> make[1]: Target `all' not remade because of errors.
> make: *** [all] Error 2
> make: Target `default_target' not remade because of errors.
> -- Failed: extragear/multimedia/amarok
Comment 1 Chris Burel 2012-03-29 21:16:34 UTC
Created attachment 70001 [details]
Include tmap.h to fix compile of Amarok

This is because a new typedef was introduced, using a "Map".  But the "Map" type is not explicitly included by Amarok code.  If this header needs the Map type defined, it should include the appropriate file.
Comment 2 Christoph Feck 2012-05-07 22:56:07 UTC
Fixed with commit 2297a6d531e3e1d347c394095ae14403a11bb6dd