Bug 317948

Summary: make fails due to MemoryMeta.h:66:47:
Product: [Applications] amarok Reporter: bgerum <subscri>
Component: generalAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED FIXED    
Severity: critical CC: dmeltzer.devel, matej
Priority: NOR    
Version: 2.7.0   
Target Milestone: 2.8   
Platform: MacPorts   
OS: macOS   
Latest Commit: Version Fixed In: 2.8

Description bgerum 2013-04-06 19:48:12 UTC
Tried to install amarok and amarok-devel via macports.
Failed, so I tried to compile the 2.7.0 src.
this is what I get from make:

[ 26%] Building CXX object src/CMakeFiles/amaroklib.dir/core-impl/collections/support/MemoryMeta.o
In file included from /opt/local/src/amarok-2.7.0/src/core-impl/collections/support/MemoryMeta.cpp:18:
/opt/local/src/amarok-2.7.0/src/core-impl/collections/support/MemoryMeta.h:66:47: error: expected a class or namespace
        virtual QString name() const { return Base::name(); }
                                              ^
/opt/local/src/amarok-2.7.0/src/core-impl/collections/support/MemoryMeta.h:66:47: error: member 'Base' found in multiple base classes of different types
        virtual QString name() const { return Base::name(); }
                                              ^
/opt/local/src/amarok-2.7.0/src/core/meta/Meta.h:127:30: note: member found by ambiguous name lookup
    class AMAROK_CORE_EXPORT Base : public virtual QSharedData, public MetaCapability
                             ^
/opt/local/src/amarok-2.7.0/src/core-impl/collections/support/MemoryMeta.h:37:7: note: member found by ambiguous name lookup
class Base
      ^

Reproducible: Always

Steps to Reproduce:
1.  cmake -DCMAKE_INSTALL_PREFIX=/opt/kde4 -DCMAKE_BUILD_TYPE=debugfull ..
2. make
3.
Actual Results:  
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [src/CMakeFiles/amaroklib.dir/core-impl/collections/support/MemoryMeta.o] Error 1
make[1]: *** [src/CMakeFiles/amaroklib.dir/all] Error 2
make: *** [all] Error 2

Expected Results:  
compiled without errors
Comment 1 Mark Kretschmann 2013-05-12 09:07:54 UTC
I can confirm this. With Amarok from Git it doesn't happen anymore, but I can't build 2.7.0 either.

@Matej: Can we fix this for 2.7.1?
Comment 2 Matěj Laitl 2013-05-12 09:33:02 UTC
This was fixed in e3738dc6.

(In reply to comment #1)
> @Matej: Can we fix this for 2.7.1?

It would be possible and I even had the above commit in my preliminary to-2.7.1 list. However I decided to drop it, because this is IMO just the first problem on Max OS and many more were solved by Daniel later.

I.e. we should recommend current master to Mac OS users and aim for Mac compatibility in 2.8 (not in 2.7.1).