Мне пришло в голову, что я получил "Ошибка: Неопределенный интерфейс" от moc относительно файла, который был нацелен на несколько версий Qt.
#if (QT_VERSION >= QT_VERSION_CHECK(5, 5, 0))
#include <QtUiPlugin/QDesignerCustomWidgetInterface>
#else
#include <QDesignerCustomWidgetInterface>
#endif
В результате прекомпилятору C ++ удалось оценить макрос QT_VERSION_CHECK, а moc - НЕ.
Вам необходимо перефразировать условие как прямой номер версии
#if (QT_VERSION >= 0x050500)
таким образом, C ++ и moc могут выполнять эту работу и включают файл