问题描述
我花了几天尝试启用WITH_QUICK选项来编译QGIS 3.10。 运行CMAKE时,qmlplugindump.exe是唯一无法自动找到的var,因此我手动将其放置(其他所有都可以正常工作)
在VS2015中,当我尝试编译解决方案(在RelWithDebug x64中)时,一切都很好,预计会出现2个错误qgis_quick和qgis_quick_plugin。
在编译器输出中,我遇到有关QMetaObject的LNK2001 moc错误:
139> Creating library C:/OSGeo4W64/QGIS/ms-windows/osgeo4w/build-qgis-test-x86_64/src/quickgui/RelWithDebInfo/qgis_quick.lib and object C:/OSGeo4W64/QGIS/ms-windows/osgeo4w/build-qgis-test-x86_64/src/quickgui/RelWithDebInfo/qgis_quick.exp
139>qgsquickattributeformmodelbase.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsField::staticMetaObject" (?staticMetaObject@QgsField@@2UQMetaObject@@B)
139>qgsquickattributemodel.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsField::staticMetaObject" (?staticMetaObject@QgsField@@2UQMetaObject@@B)
139>qgsquickidentifykit.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsvectorLayer::staticMetaObject" (?staticMetaObject@QgsvectorLayer@@2UQMetaObject@@B)
139>qgsquickmapcanvasmap.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsMapLayer::staticMetaObject" (?staticMetaObject@QgsMapLayer@@2UQMetaObject@@B)
139>moc_qgsquickmapsettings.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsMapLayer::staticMetaObject" (?staticMetaObject@QgsMapLayer@@2UQMetaObject@@B)
139>qgsquickmapcanvasmap.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsMapRendererJob::staticMetaObject" (?staticMetaObject@QgsMapRendererJob@@2UQMetaObject@@B)
139>qgsquickmapsettings.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsProject::staticMetaObject" (?staticMetaObject@QgsProject@@2UQMetaObject@@B)
139>qgsquickmessagelogmodel.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsMessageLog::staticMetaObject" (?staticMetaObject@QgsMessageLog@@2UQMetaObject@@B)
139>moc_qgsquickfeaturelayerpair.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsFeature::staticMetaObject" (?staticMetaObject@QgsFeature@@2UQMetaObject@@B)
139>moc_qgsquickutils.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsFeature::staticMetaObject" (?staticMetaObject@QgsFeature@@2UQMetaObject@@B)
139>moc_qgsquickcoordinatetransformer.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsCoordinateReferenceSystem::staticMetaObject" (?staticMetaObject@QgsCoordinateReferenceSystem@@2UQMetaObject@@B)
139>moc_qgsquickmapsettings.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsCoordinateReferenceSystem::staticMetaObject" (?staticMetaObject@QgsCoordinateReferenceSystem@@2UQMetaObject@@B)
139>moc_qgsquickutils.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsCoordinateReferenceSystem::staticMetaObject" (?staticMetaObject@QgsCoordinateReferenceSystem@@2UQMetaObject@@B)
139>moc_qgsquickscalebarkit.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsUnitTypes::staticMetaObject" (?staticMetaObject@QgsUnitTypes@@2UQMetaObject@@B)
139>moc_qgsquickutils.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QgsPointXY::staticMetaObject" (?staticMetaObject@QgsPointXY@@2UQMetaObject@@B)
139>C:\OSGeo4W64\QGIS\ms-windows\osgeo4w\build-qgis-test-x86_64\output\bin\RelWithDebInfo\qgis_quick.dll : Fatal error LNK1120: 10 unresolved externals
有人可以帮助我吗? 非常感谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)