Qt6 Migration CI / migrate (push) Waiting to run
- Detailstatus für LtsFileDialog erweitert (flm_db.h, flm_enums.hpp, flm_translation.h) - InfrastructureManagement ism_mounting_point.h als migriert markiert - Offene Aufgaben priorisiert (LtsDataView, svcFlmCommon, svcOpmCommon, svcExmCommon) - Wichtige Dateien aktualisiert mit Datum der letzten Änderung Co-authored-by: Copilot <copilot@github.com> Entire-Checkpoint: 01M17KHGRMV62KRF0GSA2C3X1D
7.5 KiB
7.5 KiB
Qt5 zu Qt6 Migration - Statusbericht
Stand: 2026-08-29
Build-Konfiguration: BUILD_RTI=OFF (DDS Code-Generierung deaktiviert)
Qt-Version: 6.10.2
C++ Standard: C++17 (C++23 geplant, aber RTI 7.7 Inkompatibilität)
Submodule Branch: feature/qt6-migration-basis-modules @ e75e6c25
📊 Gesamtübersicht
| Bereich | Status | Build (RTI=OFF) | Notes |
|---|---|---|---|
| Lts/Common | ✅ Vollständig | ✅ Erfolgreich | Basis-Module migriert |
| Lts/DDS | 🟡 Struktur vorhanden | ⚠️ Stub-Header nötig | DDS-Code-Generator läuft nicht ohne RTI |
| Lts/Viewer | 🟡 Teilweise | ⚠️ Fehlende Dependencies | LtsFileDialog ✅, LtsDataView ❌ |
| Lts/Plugins | 🟡 Struktur vorhanden | ❌ Nicht getestet | 60 Untermodule |
| Lts/Services | 🟡 Struktur vorhanden | ❌ Nicht getestet | 47 Untermodule |
| Lts/Projects | 🟡 Struktur vorhanden | ❌ Nicht getestet | 5 Untermodule |
| Lts/Proxies | 🟡 Struktur vorhanden | ❌ Nicht getestet | 13 Untermodule |
| TetraIF | 🟡 Teilweise | ❌ Nicht getestet | Migration läuft |
| Z-Module | 🟡 Teilweise | ⚠️ Include-Pfad Probleme | NGLLogger Pfad korrigieren |
🔍 Detailstatus pro Modul
✅ Erfolgreich migriert (BUILD_RTI=OFF)
Lts/Common
- Status: ✅ Vollständig migriert
- Build: ✅ Erfolgreich
- Tests: 1/1 bestanden
- Module:
- LtsUtils (Core, Settings, GuiConnectDialog)
- LtsWidgets
- LtsSession
- LtsAppDescriptor
- LtsPluginManager
- LtsCommandLineParser
Lts/Viewer/LtsFileDialog
- Status: ✅ Header korrigiert (2026-08-29)
- Build: ✅ Compiliert erfolgreich bis Linker
- Link: ⚠️ Fehlende Dependencies (LtsDataView, svcFlmCommon, svcOpmCommon, svcExmCommon)
- Korrekturen (2026-08-29):
flm_db.hStub-Header vervollständigt (alle Member-Variablen, Methoden, Initialisierung)flm_enums.hppEnums aus XML extrahiert (FileStatus, FileCategory, FileType, MainFolder)flm_translation.haktualisiert (toInt() entfernt, trFolderName() korrigiert)flm_ftc.hminimaler Stub-Header erstellt- Plugin-Interfaces erstellt (flm, opm, exm data plugin interface)
- QString/std::string Konvertierungen behoben in:
lts_dialog_model_folder.cpplts_file_dialog_widget.cpplts_dialog_model_file.cpp
- Folder::name() Rückgabetyp: std::string (kompatibel)
- FileContent: Alle benötigten Methoden implementiert (fileStatus, name, isTemplate, fileType, fileId, folderId, operatorId, mainFolder, exerciseId, properties, isDeleted, usedBy, lastModified, phaseId, isUsedBy, isHidden)
- std::optional für exerciseId/phaseId unterstützt
InfrastructureManagement
- Status: ✅ ism_mounting_point.h migriert (2026-08-29)
- Korrekturen:
- Header von Qt5-Quellcode kopiert
- Include-Pfade korrigiert (
#include "ismshared_export.h"relativ) - Redundante Methodendefinitionen in
.cppentfernt
⚠️ Teilweise migriert / Build-Probleme
Lts/Viewer/LtsDataView
- Status: ❌ Nicht migriert
- Problem: Header-Datei fehlt (
LtsDataView/lts_data_view.h) - Lösung: Modul muss migriert werden (HOCHPRIORITÄT - Blocker)
Lts/Services/svcFlmCommon
- Status: ❌ Nicht migriert
- Problem: Library fehlt im Linker
- Lösung: Modul migrieren oder Stub erstellen (HOCHPRIORITÄT)
Lts/Services/svcOpmCommon
- Status: ❌ Nicht migriert
- Problem: Library fehlt im Linker
- Lösung: Modul migrieren oder Stub erstellen (HOCHPRIORITÄT)
Lts/Services/svcExmCommon
- Status: ❌ Nicht migriert
- Problem: Library fehlt im Linker
- Lösung: Modul migrieren oder Stub erstellen (HOCHPRIORITÄT)
Lts/Services/InfrastructureManagement
- Status: ⚠️ Include-Pfad Problem
- Problem:
NGLLogger/Z/src/NGLLoggerPfad existiert nicht - Lösung: CMakeLists.txt Include-Pfade korrigieren
Lts/Services/ProjectDataManagement
- Status: ⚠️ Enum-Wert fehlt
- Problem:
L25_KindGuidingLine::nesAexistiert nicht - Lösung: Enum-Definition prüfen und ergänzen
Z/src/NGLLogger
- Status: ⚠️ Include-Pfad Problem
- Problem: CMake generiert falschen Pfad
/repo/build-qt6-validation/Z/src/NGLLogger/Z/src/NGLLogger - Lösung: CMakeLists.txt Include-Pfade korrigieren
Lts/Tools/Adler/WebSocketSimulator
- Status: ❌ QtWidgets Include fehlt
- Problem:
#include <QtWidgets/QAction>wird nicht gefunden - Lösung: Qt6 Widgets Component explizit finden und verlinken
🛠️ Offene Aufgaben
Hochprioritär (Blocker für LtsFileDialog Build)
- ✅ FileManagement Stub-Header vervollständigt (2026-08-29)
- ❌ LtsDataView migrieren - Wird von LtsFileDialog und anderen Modulen benötigt
- ❌ svcFlmCommon migrieren - Service-Library für FileManagement Common
- ❌ svcOpmCommon migrieren - Service-Library für OperatorManagement Common
- ❌ svcExmCommon migrieren - Service-Library für ExerciseManagement Common
Mittlere Priorität
- ❌ NGLLogger Include-Pfad - CMakeLists.txt korrigieren
- ❌ ProjectDataManagement Enums - Fehlende Enum-Werte ergänzen
- ❌ QtWidgets Includes - Alle Qt6 Widgets Components explizit verlinken
- ❌ Lts/Plugins Kernmodule - Priorisiere essentielle Plugins
- ❌ Lts/Services Basis - InfrastructureManagement, OperatorManagement
Niedrige Priorität
- ❌ Lts/Tools - Adler WebSocket Simulator und andere Tools
- ❌ Vollständige Testabdeckung - Tests für alle migrierten Module
📝 Build-Status (BUILD_RTI=OFF)
Configure: ✅ Erfolgreich (mit CMake-Warnings)
Compile: ⚠️ 4/1187 Targets erfolgreich, dann Fehler (fehlende Dependencies)
Link: ❌ Fehlende Libraries (LtsDataView, svcFlmCommon, svcOpmCommon, svcExmCommon)
Bekannte Warnungen
QVariant::canConvert(int)deprecated in Qt6 → zucanConvert<T>()migrieren- NGLLogger Include-Pfad ungültig
- AdvancedSymbology Viewer-Pfade in CMakeLists.txt entfernt
🔄 Nächste Schritte (Priorisiert)
- LtsDataView migrieren (Blocker für LtsFileDialog)
- svcFlmCommon, svcOpmCommon, svcExmCommon - Service-Stubs oder vollständige Migration
- NGLLogger CMakeLists.txt korrigieren
- ProjectDataManagement Enums vervollständigen
- QtWidgets Components explizit verlinken in allen CMakeLists.txt
📌 Wichtige Dateien
qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_db.h- DDS Stub-Header (2026-08-29 aktualisiert)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_enums.hpp- Zentrale Enumsqt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_translation.h- Übersetzungen (2026-08-29 aktualisiert)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_ftc.h- FTC Stub (2026-08-29 neu)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/FileManagement/flm_data_plugin_interface.h- Plugin Interface (2026-08-29 neu)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/OperatorManagement/opm_data_plugin_interface.h- Plugin Interface (2026-08-29 neu)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/ExerciseManagement/exm_data_plugin_interface.h- Plugin Interface (2026-08-29 neu)qt-migration-legatus/qt6-after/qt6-migrated-legatus/include/InfrastructureManagement/ism_mounting_point.h- ISM Interface (2026-08-29 migriert)
Erstellt: 2026-08-18
Letzte Aktualisierung: 2026-08-29
Autor: Migration Team