You define a copy constructor:
AssetList::AssetList(const AssetList&) : QList<Asset*>(){}
But you do not declare it in the AssetList
class.
You need to add it:
class AssetList : public QList<Asset*>
{
public:
AssetList(){}
~AssetList();
AssetList(const AssetList&); // Declaring the copy-constructor
...
};