diff --git a/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.cpp
index 3f3996f610e8c6673cc5a76937bd54f49d912f4d..b84ec0003bf21e209b7bd468d78029e5c52b5fda 100644
--- a/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.cpp
+++ b/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.cpp
@@ -54,7 +54,9 @@
 #include <QSet>
 #include <QtDebug>
 
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
 #include <QSGItem>
+#endif
 
 #include <QtDeclarative/QDeclarativeEngine>
 
@@ -550,10 +552,12 @@ QObject *ServerNodeInstance::internalObject() const
     return m_nodeInstance->object();
 }
 
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
 QSGItem *ServerNodeInstance::internalSGItem() const
 {
     return qobject_cast<QSGItem*>(internalObject());
 }
+#endif
 
 void ServerNodeInstance::activateState()
 {
diff --git a/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.h b/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.h
index 1037334bf11c2d0af85e08c769dd5d977aa64781..ed6ccd3a0abb5c628d973da7284090cc92e9d701 100644
--- a/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.h
+++ b/share/qtcreator/qml/qmlpuppet/instances/servernodeinstance.h
@@ -46,7 +46,9 @@ class QStyleOptionGraphicsItem;
 class QDeclarativeContext;
 class QGraphicsItem;
 class QGraphicsTransform;
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
 class QSGItem;
+#endif
 QT_END_NAMESPACE
 
 namespace QmlDesigner {
@@ -199,7 +201,9 @@ private: // functions
 
 
     QObject *internalObject() const; // should be not used outside of the nodeinstances!!!!
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
     QSGItem *internalSGItem() const;
+#endif
 
 private: // variables
     QSharedPointer<Internal::ObjectNodeInstance> m_nodeInstance;