Trouble compiling Kid3 on Linux (CLI only)
Hi, I'm trying to compile Kid3 CLI so it'll work on Amazon Linux. I'll provide as much detail as possible here, to reduce the amount of back-and-forth.
The end goal is to build a Kid3 CLI-only executable that is 100% self-contained (static build) and doesn't depend on any external libraries or files, outside of the basic libraries that all Linux machines have.
I'm building a Dockerfile & build script to build Kid3 in one shot (see attached files).
The build process for Kid3 makes it most of the way through, then bombs at 30%:
In file included from /kid3/src/core/model/coretaggedfileiconprovider.cpp:27:0:
/kid3/src/core/model/coretaggedfileiconprovider.h:90:11: error: 'QByteArray' does not name a type
virtual QByteArray iconIdForTaggedFile(const TaggedFile* taggedFile) const;
^~~~~~~~~~
/kid3/src/core/model/coretaggedfileiconprovider.h:98:42: error: 'QByteArray' does not name a type
virtual QVariant pixmapForIconId(const QByteArray& id);
^~~~~~~~~~
/kid3/src/core/model/coretaggedfileiconprovider.cpp:79:35: error: no 'QByteArray CoreTaggedFileIconProvider::iconIdForTaggedFile(const TaggedFile*) const' member function declared in class 'CoreTaggedFileIconProvider'
const TaggedFile* taggedFile) const
^~~~~
/kid3/src/core/model/coretaggedfileiconprovider.cpp:109:10: error: prototype for 'QVariant CoreTaggedFileIconProvider::pixmapForIconId(const QByteArray&)' does not match any in class 'CoreTaggedFileIconProvider'
QVariant CoreTaggedFileIconProvider::pixmapForIconId(const QByteArray& id)
^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /kid3/src/core/model/coretaggedfileiconprovider.cpp:27:0:
/kid3/src/core/model/coretaggedfileiconprovider.h:98:20: error: candidate is: virtual QVariant CoreTaggedFileIconProvider::pixmapForIconId(const int&)
virtual QVariant pixmapForIconId(const QByteArray& id);
^~~~~~~~~~~~~~~
make[2]: *** [src/core/CMakeFiles/kid3-core.dir/model/coretaggedfileiconprovider.cpp.o] Error 1
make[1]: *** [src/core/CMakeFiles/kid3-core.dir/all] Error 2
make: *** [all] Error 2
How do I resolve this?