vs下编译qt程序 出现Error: Undefined interface 错误

错误输出:

Moc’ing asciifile.h…
1> D:\mywork\src\MyLibreCAD\plugins\asciifile\asciifile.h(35): Error: Undefined interface
1>asciifile.h : error 1: moc (D:\Qt\Qt5.13.0-2\5.13.0\msvc2017_64\bin\moc.exe)

部分源代码:

class AsciiFile : public QObject, QC_PluginInterface
{
    Q_OBJECT
    Q_INTERFACES(QC_PluginInterface)
    Q_PLUGIN_METADATA(IID LC_DocumentInterface_iid FILE  "asciifile.json")

 public:
    virtual PluginCapabilities getCapabilities() const Q_DECL_OVERRIDE;
    virtual QString name() const Q_DECL_OVERRIDE;
    virtual void execComm(Document_Interface *doc,
                          QWidget *parent, QString cmd) Q_DECL_OVERRIDE;
};

解决方案:
在vs属性页->qt meta-object compiler->moc->include 里设置相应的包含文件(包含QC_PluginInterface的文件)
vs下编译qt程序 出现Error: Undefined interface 错误_第1张图片

有问题请留言或加群 :1032082534

你可能感兴趣的:(qt)