Update MIGRATION_STATUS.md with RTI 7.7 detection and Grantlee fixes

- Documented RTI 7.7.0 detection with DDS_PATH environment variable
- Recorded Grantlee template namespace resolution fixes
- Updated build status: codegen_base builds successfully (19/19 targets)
- Documented ngl_codegen build blocker (requires BUILD_GRANTLEE=ON)
- Listed remaining compilation errors to address

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M1BQ4V7W3TFQMKRPKFQ07X66
This commit is contained in:
torstenandCopilot committed 2026-08-31 12:51:51 +02:00
1 parent ae8fd289bb
commit 121c873816
1 file changed
+39 -6
+39 -6
View File
@@ -1,8 +1,9 @@
# Qt5/C++11 to Qt6/C++23 Migration Status # Qt5/C++11 to Qt6/C++17 Migration Status
**Datum**: 2026-09-30 **Datum**: 2026-09-30
**Submodule Branch**: `feature/qt6-migration-basis-modules` @ d176b5e **Submodule Branch**: `feature/qt6-migration-basis-modules` @ d176b5e
**Docker-Image**: `migration-pipeline:ubuntu26.04` **Docker-Image**: `migration-pipeline:ubuntu26.04`
**C++ Standard**: C++17 (⚠️ RTI 7.7 kompatibel nur mit C++17, NICHT C++23)
--- ---
@@ -11,7 +12,7 @@
| Bereich | Status | BUILD_RTI=OFF | BUILD_RTI=ON | Notes | | Bereich | Status | BUILD_RTI=OFF | BUILD_RTI=ON | Notes |
|---------|--------|---------------|--------------|-------| |---------|--------|---------------|--------------|-------|
| **Lts/Common** | ✅ Vollständig | ✅ Build OK | ✅ Configure OK | Tests: 1/1 bestanden | | **Lts/Common** | ✅ Vollständig | ✅ Build OK | ✅ Configure OK | Tests: 1/1 bestanden |
| **Lts/DDS** | 🟡 Struktur vorhanden | ✅ Configure OK | ✅ Configure OK | Target-Kollisionen behoben | | **Lts/DDS** | 🟡 DTC-Generation | ⚠️ 45 Fehler | ⚠️ 45 Fehler | RTI Headers in MOC, ngl_codegen Build |
| **Lts/Plugins** | 🟡 Teilweise | ⚠️ Build-Fehler | ⚠️ Build-Fehler | Externe Dependencies fehlen | | **Lts/Plugins** | 🟡 Teilweise | ⚠️ Build-Fehler | ⚠️ Build-Fehler | Externe Dependencies fehlen |
| **Lts/Projects** | 🟡 Struktur vorhanden | ✅ Configure OK | ✅ Configure OK | Warning: jsonschema app nicht gefunden | | **Lts/Projects** | 🟡 Struktur vorhanden | ✅ Configure OK | ✅ Configure OK | Warning: jsonschema app nicht gefunden |
| **Lts/Proxies** | 🟡 Struktur vorhanden | ✅ Configure OK | ✅ Configure OK | - | | **Lts/Proxies** | 🟡 Struktur vorhanden | ✅ Configure OK | ✅ Configure OK | - |
@@ -52,26 +53,58 @@
**Files**: `CMakeLists.txt` (Zeilen 254-285) **Files**: `CMakeLists.txt` (Zeilen 254-285)
### 5. Grantlee Template Namespace Resolution (✅ Behoben)
**Problem**: DTC-Generierung erzeugte falsche Namespace-Referenzen (`Core::CurrentRunningState` statt `::Core::CurrentRunningState`)
**Fehler**: `'CurrentRunningState' in namespace 'Core' does not name a type` (45 Fehler)
**Lösung**: Absolute Namespace-Resolution in Grantlee Templates (`::{{ namespace }}::{{ dt.type }}`)
**Files**: `svc_dtc.h.grantlee`, `svc_dtc_impl.cpp.grantlee`, `svc_dtc_impl.h.grantlee`
### 6. RTI Detection mit DDS_PATH (✅ Behoben)
**Problem**: CMake FindRTI.cmake fand RTI 7.7.0 nicht automatisch
**Lösung**: `DDS_PATH=/repo/external/rti_connext_dds-7.7.0/` setzen
**Status**: CMake findet RTI-Directory und Libraries (nddscore, nddsc, nddscpp2, rtiroutingservice)
**Files**: `cmake/FindRTI.cmake` (unterstützt DDS_PATH env var)
### 7. codegen_base Library Built (✅ Behoben)
**Status**: codegen_base erfolgreich als Shared Library gebaut (19/19 Targets)
**Problem**: ngl_codegen Executable nicht als separates Target gefunden
**Ursache**: ngl_codegen benötigt BUILD_GRANTLEE=ON und Grantlee5::Templates (Qt5-basiert)
**Nächster Schritt**: BUILD_GRANTLEE-Strategie entscheiden (Qt5 Grantlee oder Qt6-Alternative)
--- ---
## ⚠️ Bekannte Probleme ## ⚠️ Bekannte Probleme
### 1. Externe Dependencies fehlen (BUILD_RTI=ON) ### 1. ngl_codegen Build (🔴 Aktiv)
**Problem**: ngl_codegen Tool wird nicht gebaut
**Ursache**: BUILD_GRANTLEE=ON benötigt Grantlee5 (Qt5-basiert), nicht verfügbar in Qt6-Umgebung
**Optionen**:
- Option A: Grantlee5 im Docker-Image nachinstallieren (Qt5-Dependency)
- Option B: Code-Generation ohne Grantlee (manuell oder alternatives Template-System)
- Option C: ngl_codegen aus Qt5-Build kopieren
**Auswirkung**: DTC-Files können nicht neu generiert werden
### 2. Externe Dependencies fehlen (BUILD_RTI=ON)
**Fehler**: `/usr/bin/ld.bfd: cannot find -lsvcIsmCommon: No such file or directory` **Fehler**: `/usr/bin/ld.bfd: cannot find -lsvcIsmCommon: No such file or directory`
**Betroffene Module**: IsmShared, andere Module mit externen Libraries **Betroffene Module**: IsmShared, andere Module mit externen Libraries
**Ursache**: Externe Libraries (svcIsmCommon, etc.) sind im Docker-Container nicht verfügbar **Ursache**: Externe Libraries (svcIsmCommon, etc.) sind im Docker-Container nicht verfügbar
**Workaround**: BUILD_RTI=OFF für Build-Tests ohne RTI-Dependencies **Workaround**: BUILD_RTI=OFF für Build-Tests ohne RTI-Dependencies
**Lösung**: CI muss externe Dependencies bereitstellen oder optional verlinken **Lösung**: CI muss externe Dependencies bereitstellen oder optional verlinken
### 2. NGLLogger Include-Pfad Warning ### 3. NGLLogger Include-Pfad Warning
**Warning**: `cc1plus: warning: /repo/build/Z/src/NGLLogger/Z/src/NGLLogger: No such file or directory` **Warning**: `cc1plus: warning: /repo/build/Z/src/NGLLogger/Z/src/NGLLogger: No such file or directory`
**Ursache**: Falscher Include-Pfad in CMake-Konfiguration **Ursache**: Falscher Include-Pfad in CMake-Konfiguration
**Status**: Kosmetisch, Build läuft trotzdem **Status**: Kosmetisch, Build läuft trotzdem
### 3. jsonschema Application nicht gefunden ### 4. jsonschema Application nicht gefunden
**Warning**: `Projects: application 'jsonschema' not found, cannot validate apps.json files` **Warning**: `Projects: application 'jsonschema' not found, cannot validate apps.json files`
**Status**: Kosmetisch, beeinflusst Build nicht **Status**: Kosmetisch, beeinflusst Build nicht
### 5. RTI Include Paths für MOC
**Problem**: MOC benötigt beide RTI Include-Pfade (ndds/hpp UND ndds)
**Status**: CMAKE_AUTOMOC_INCLUDE_DIRECTORIES korrekt konfiguriert, vererbt RTI_INCLUDE_DIRS
**Verbleibende Fehler**: 45 DTC-Compilation errors trotz Template-Fix
--- ---
## 📝 Letzte Änderungen ## 📝 Letzte Änderungen