Dear All: here is my situation
The class which cause compile Error is PropertyColumnMapping in DynamicObjectCore.pro
Then CommonBusiness.pro using this class
And Presentation linked to both CommonBusiness.pro & DynamicObjectCore.pro
Clean + QMake + Rebuild doesn't work.
Here is my Project Structure.
Application.pro
TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS +=
Framework
Services
Business
Presentation
Updater
QT += qml quick widgets network sql xml
Business.pro
TEMPLATE = subdirs
SUBDIRS +=
CommonBusiness
ServiceBusiness
//Link to Framework.System
CommonBusiness.pro
QT -= gui
QT += qml quick sql xml xmlpatterns network
TARGET = CommonBusiness
TEMPLATE = lib
CONFIG += staticlib c++11
SOURCES += commonbusiness.cpp
...
HEADERS += commonbusiness.h
...
//# Link to FrameWork.DynamicObjectCore
DynamicObjectCore.pro
QT -= gui
QT += qml
TARGET = DynamicObjectCore
TEMPLATE = lib
CONFIG += staticlib c++11
#DEFINES += DYNAMICOBJECTCORE_LIBRARY
SOURCES +=
MetadataModel/propertycolumnmapping.cpp
...
HEADERS +=
MetadataModel/propertycolumnmapping.h
...
unix {
target.path = /usr/lib
INSTALLS += target
}
Presentation.pro
TEMPLATE = app
TARGET = [ApplicationName]
QT += qml quick widgets network sql xml xmlpatterns
//# for QT 5.4
qtHaveModule(webengine) {
QT += webengine
DEFINES += QT_WEBVIEW_WEBENGINE_BACKEND
}
qtHaveModule(webkitwidgets) {
QT += webkitwidgets
}
//# for QT 5.7
equals(QT_VERSION, QT_VERSION_CHECK(5, 7, 0)) {
QT += webview
DEFINES += QT_WEBVIEW_CONTROL_BACKEND
}
CONFIG += c++11
CONFIG(release, debug|release) {
CONFIG += release force_debug_info
}
RESOURCES += qml.qrc
shared.qrc
//# Link to DynamicObjectCore
//# Link to CommonBusiness