cmake中qt对象的链接

时间:2019-01-02 14:10:30

标签: c++ qt cmake

我有一个VMSCore库,它具有VMSObject :: public QObject。 我实现了从VMSObject类继承的工厂类。 构建库后,我尝试将其链接到我的exe项目。 我收到链接错误:

  

严重性代码描述项目文件行抑制状态   错误LNK2019无法解析的外部符号“ public:虚拟int __cdecl   VMS :: Factory :: qt_metacall(枚举QMetaObject :: Call,int,void * *)“   (?qt_metacall @ Factory @ VMS @@ UEAAHW4Call @ QMetaObject @@ HPEAPEAX @ Z)   在函数“公共:虚拟int __cdecl中引用”   VMS :: Algorithm :: Factory :: qt_metacall(枚举QMetaObject :: Call,int,void *   *)“(?qt_metacall @ Factory @ Algorithm @ VMS @@ UEAAHW4Call @ QMetaObject @@ HPEAPEAX @ Z)CVFnVMS实验C:\ Users \ Matvey \ cvfn \ build \ Products \ CVFnVMS \ mocs_compilation.obj 1

据我了解的错误,我没有链接moc文件中定义的函数。 在CMake中链接由Moc创建的文件的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

已解决。 我必须在我的cmake文件中“设置(CMAKE_AUTOMOC ON)”为库。