diff --git a/silecs-diagnostic-cpp/Makefile b/silecs-diagnostic-cpp/Makefile
index fc5a1765efd6a22b6388add313f7e34ded9effc6..3bc73c2551d6de17643b7ab7dbf40d3a95b8b09e 100644
--- a/silecs-diagnostic-cpp/Makefile
+++ b/silecs-diagnostic-cpp/Makefile
@@ -28,7 +28,7 @@ BIN_NAME = $(PROJECT)-$(PRODUCT)
 DBG = false
 
 #DEFINES = -DWITH_RBAC -D_REENTRANT -DQT_NO_DEBUG_OUTPUT -DQT_NO_WARNING_OUTPUT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
-DEFINES = -D_REENTRANT -DQT_NO_DEBUG_OUTPUT -DQT_NO_WARNING_OUTPUT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
+DEFINES = -D_REENTRANT -DQT_NO_DEBUG_OUTPUT -DQT_NO_WARNING_OUTPUT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -DQT_WIDGETS_LIB
 COMPILER_FLAGS = -O2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -mtune=generic $(DEFINES)
 
 #Enable C++11 Support
@@ -50,9 +50,9 @@ EXTRA_SRCS = generated/qrc_images.cpp\
 # Include the generic make file
 include $(COMMON_MAKE_PATH)/Make.generic
 
-QT_RCC = /usr/bin/rcc
-QT_UIC = /usr/bin/uic-qt4
-QT_MOC = /usr/bin/moc-qt4
+QT_RCC = /usr/bin/rcc-qt5
+QT_UIC = /usr/bin/uic-qt5
+QT_MOC = /usr/bin/moc-qt5
 
 # rules to generate Qt files
 before_compile::
diff --git a/silecs-diagnostic-cpp/Makefile.dep b/silecs-diagnostic-cpp/Makefile.dep
index afd572058abb0fc3d6736a08dac248395b3b49b9..f1da15a1e9975d1b9f03ee6b6b5ed3a2a7ad1748 100644
--- a/silecs-diagnostic-cpp/Makefile.dep
+++ b/silecs-diagnostic-cpp/Makefile.dep
@@ -20,17 +20,16 @@ DEPENDENT_COMPILER_OPTIONS += -I$(RBACK_HOME)/include
 DEPENDENT_COMPILER_OPTIONS += -I$(SILECS_COMM_HOME)/include
 DEPENDENT_COMPILER_OPTIONS += -I$(LIBXML_PATH)
 DEPENDENT_COMPILER_OPTIONS += -I$(BOOST_HOME)/include
-DEPENDENT_COMPILER_OPTIONS += -I/usr/lib64/qt4/mkspecs/linux-g++-64
-DEPENDENT_COMPILER_OPTIONS += -I/usr/include/QtCore
-DEPENDENT_COMPILER_OPTIONS += -I/usr/include/QtGui
+DEPENDENT_COMPILER_OPTIONS += -I/usr/lib64/qt5/mkspecs/linux-g++-64
+DEPENDENT_COMPILER_OPTIONS += -I/usr/include/qt5
  
 DEPENDENT_LINKER_OPTIONS += -L$(RBACK_HOME)/lib
 DEPENDENT_LINKER_OPTIONS += -L$(SILECS_COMM_HOME)/lib/$(CPU)
 DEPENDENT_LINKER_OPTIONS += -L$(SNAP7_BASE)/bin/$(CPU)-linux -lsnap7
 DEPENDENT_LINKER_OPTIONS += -L$(BOOST_HOME)/lib/$(CPU)
-DEPENDENT_LINKER_OPTIONS += -L/usr/lib64 -lxml2
+DEPENDENT_LINKER_OPTIONS += -L/lib64 -lxml2
 DEPENDENT_LINKER_OPTIONS += -lsilecs-comm
-DEPENDENT_LINKER_OPTIONS += -lstdc++ -lxml2 -lboost_system -lboost_filesystem -lcurl -lQtGui -lQtCore
+DEPENDENT_LINKER_OPTIONS += -lstdc++ -lxml2 -lboost_system -lboost_filesystem -lcurl -lQt5Gui -lQt5Core -lQt5Widgets
 
 DEPENDENT_LINKER_OPTIONS += -Wl,-rpath=$(SNAP7_BASE)/bin/$(CPU)-linux
 
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.cpp
index d9f49b5ce1d837ce6437484c54f18b107765a9c6..f66da80e1f03574596f164e9d46c072b66381246 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.cpp
@@ -11,6 +11,13 @@ Contributors:
 */
 
 
+#include <QtCore/QDebug>
+#include <QtCore/QTime>
+#include <QtCore/QTimer>
+#include <QtWidgets/QMessageBox>
+#include <QtWidgets/QFileDialog>
+#include <QtWidgets/QMenu>
+
 #include <silecs-diagnostic/diagnostictoolmainview.h>
 #include <silecs-diagnostic/generated/ui_diagnostictoolmainview.h>
 #include <silecs-diagnostic/utils.h>
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.h
index 109d3ac0d88f5891548f18c5314af4aaeadb0019..cc150de89d44b88228caab1cb92a0c5873995dae 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/diagnostictoolmainview.h
@@ -14,7 +14,7 @@ Contributors:
 #ifndef SILECS_DIAG_DIAGNOSTICTOOLMAINVIEW_H
 #define SILECS_DIAG_DIAGNOSTICTOOLMAINVIEW_H
 
-#include <QMainWindow>
+#include <QtWidgets/QMainWindow>
 
 #include <silecs-diagnostic/displayarraydialog.h>
 #include <silecs-diagnostic/item.h>
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.cpp
index e26838624e73b34be8088c29e59265738de567f9..f1e2dfb89153440f0f336a44712588fae4eebee8 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.cpp
@@ -14,7 +14,7 @@ Contributors:
 #include <silecs-diagnostic/displayarraydialog.h>
 #include <silecs-diagnostic/generated/ui_displayarraydialog.h>
 
-#include <QDebug>
+#include <QtCore/QDebug>
 
 DisplayArrayDialog::DisplayArrayDialog(QWidget *parent) :
     QDialog(parent),
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.h
index cabe67fb3e97276c7ab57251a835959a5f1f53d6..2c5e524ca052e956b38215a4e233973453d18616 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/displayarraydialog.h
@@ -14,7 +14,7 @@ Contributors:
 #ifndef SILECS_DIAG_DISPLAYARRAYDIALOG_H
 #define SILECS_DIAG_DISPLAYARRAYDIALOG_H
 
-#include <QDialog>
+#include <QtWidgets/QDialog>
 
 namespace Ui {
     class DisplayArrayDialog;
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/item.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/item.h
index c26e018b6b54f61ad0a02144155bae5f26d10190..037ba529f33d2a8493a58fad858240150b44c3f7 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/item.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/item.h
@@ -14,7 +14,7 @@ Contributors:
 #ifndef SILECS_DIAG_ITEM_H
 #define SILECS_DIAG_ITEM_H
 
-#include <QTreeWidgetItem>
+#include <QtWidgets/QTreeWidgetItem>
 
 class QDomDocument;
 class Item : public QTreeWidgetItem {
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/logindialog.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/logindialog.h
index ab4295c2d2f7f34a74fc7e5178f7c3101d480f6d..499c3b7ab1677410d0be88133f33afd11c95d76e 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/logindialog.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/logindialog.h
@@ -14,7 +14,7 @@ Contributors:
 #ifndef SILECS_DIAG_LOGINDIALOG_H
 #define SILECS_DIAG_LOGINDIALOG_H
 
-#include <QDialog>
+#include <QtWidgets/QDialog>
 
 #include <silecs-diagnostic/constants.h>
 
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/loginhandler.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/loginhandler.h
index ecc43c42c45bc9b32baec89ab2aa2d6f4506c63d..4824cefed08ed2d85ffe5e78cfffae02ab0934ed 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/loginhandler.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/loginhandler.h
@@ -14,9 +14,6 @@ Contributors:
 #ifndef SILECS_DIAG_LOGINHANDLER_H
 #define SILECS_DIAG_LOGINHANDLER_H
 
-#include <QtGui>
-#include <QtCore>
-
 #include <silecs-diagnostic/logindialog.h>
 #include <silecs-diagnostic/constants.h>
 
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/main.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/main.cpp
index 902c40db9b78f5e7e253f6189b1c750df8868601..5aebbb9b0d80d22ff3f1465e572e9a588451ce8a 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/main.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/main.cpp
@@ -11,7 +11,9 @@ Contributors:
 */
 
 
-#include <QtGui/QApplication>
+#include <QtCore/QThread>
+#include <QtWidgets/QApplication>
+#include <QtWidgets/QSplashScreen>
 
 #include <silecs-diagnostic/constants.h>
 #include <silecs-diagnostic/diagnostictoolmainview.h>
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp
index 108193a71f0e65e4d94a84381d83b44a3e6d1da3..9f30def3f29679eef85344bd941ac10b6e2aa6ec 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp
@@ -10,6 +10,7 @@ Contributors:
     .GSI Helmholtzzentrum für Schwerionenforschung (GSI)  - features and bugfixes
 */
 
+#include <QtCore/QDebug>
 
 #include <silecs-diagnostic/silecsmodule.h>
 #include <silecs-communication/interface/utility/XMLParser.h>
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.h
index b6bba2cdf14b9c510b85058fa9bd3f55a3157552..92adcb6cc25064dfffcdeaa4ec653b1136b531c5 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.h
@@ -14,8 +14,7 @@ Contributors:
 #ifndef SILECS_DIAG_SILECSMODULE_H
 #define SILECS_DIAG_SILECSMODULE_H
 
-#include <QtGui>
-#include <QtCore>
+#include <QtWidgets/QTextBrowser>
 
 #include <silecs-communication/interface/core/SilecsService.h>
 
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.cpp
index b360d086e22c47a9e395e06fb6f4a8e1109f3e6c..8183b04a9eb1c138417c2200a5e00ec08b0ed32a 100644
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.cpp
@@ -13,9 +13,12 @@ Contributors:
 
 #include <silecs-diagnostic/stderrredirect.h>
 
-#include <QtCore>
-#include <QtGui>
-#include <QMessageBox>
+#include <QtWidgets/QApplication>
+#include <QtWidgets/QMessageBox>
+#include <QtCore/QDir>
+#include <QtCore/QString>
+#include <QtCore/QTextStream>
+#include <QtCore/QDebug>
 
 
 StdErrRedirect::StdErrRedirect(QTextEdit *errorLog,QObject *parent): QObject(parent)
@@ -44,7 +47,7 @@ StdErrRedirect::StdErrRedirect(QTextEdit *errorLog,QObject *parent): QObject(par
         fileToRename.rename(tmpFileNameQtFormat+".old");
 
     // Set up redirection to this file:
-    freopen(tmpFileNameNativeFormat.toAscii().constData(), "a+", stderr);
+    freopen(tmpFileNameNativeFormat.toLatin1().constData(), "a+", stderr);
 
     // Initialise the QFileSystemWatcher:
     connect(&watcher, SIGNAL(fileChanged(const QString &)),
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.h
index 9e407a0edb55acae38c0349798e4389ca346af15..fc57eee28a1c918bef9510d99481bd46e890bae1 100644
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/stderrredirect.h
@@ -14,10 +14,10 @@ Contributors:
 #ifndef SILECS_DIAG_STDERRREDIRECT_H
 #define SILECS_DIAG_STDERRREDIRECT_H
 
-#include <QObject>
-#include <QTextEdit>
-#include <QtCore>
-
+#include <QtCore/QObject>
+#include <QtCore/QFile>
+#include <QtCore/QFileSystemWatcher>
+#include <QtWidgets/QTextEdit>
 
 class StdErrRedirect : public QObject
 {
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.cpp
index 8b68651690e60c3b683197521384f14d8433d5bc..d796895d3c7c2e1764ff4c9c372e094a57aad86e 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.cpp
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.cpp
@@ -10,11 +10,14 @@ Contributors:
     .GSI Helmholtzzentrum für Schwerionenforschung (GSI)  - features and bugfixes
 */
 
+#include <QtWidgets/QTextBrowser>
+#include <QtWidgets/QScrollBar>
 
 #include <silecs-diagnostic/utils.h>
 #include <silecs-diagnostic/silecsmodule.h>
 #include <iomanip>
 
+
 extern silecsModule *mysilecs;
 
 void Utils::logError(QTextBrowser* errorConsole, std::string message)
diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.h b/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.h
index b1dfc252d4b3a988d5bb22984dbd5cfab9916ba9..9cfd41c675e253a809f9124cc079e7d4bae48112 100755
--- a/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.h
+++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/utils.h
@@ -20,10 +20,9 @@ Contributors:
 #include <sstream>
 #include <iostream>
 
-#include <QtCore>
-#include <QtGui>
-#include <QObject>
-#include <QTextEdit>
+#include <QtCore/QObject>
+#include <QtWidgets/QTextEdit>
+#include <QtWidgets/QLabel>
 
 #include <silecs-diagnostic/item.h>