Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus
2026-11-13 15:18:41 +00:00
..
2026-11-11 09:46:31 +00:00
2026-08-13 16:59:32 +00:00
2026-11-13 15:18:41 +00:00

Guez Release 2 - Qt6 Migration

Version: 2.0
Date: 2026-11-26
Branch: story/create-release-two-delivery-25_11_2026

Overview

Release 2 of the Guez project represents the Qt6-migrated version of the AP3, AP4, and AP9 modules, plus all Release 1 components (TetraIF, Z module, Lts/Common).

Total Scope: 37 targets (Krypto excluded - absent from codebase)

Module Scope

AP3 — Shared Libraries (Lts/Common)

  • LtsUtils
  • LtsWidgets
  • LtsSession
  • LtsPluginManager
  • CodeGen (includes ngl_codegen tool)

AP4 — DDS Middleware

  • Core
  • DDSConnector
  • Routing
  • QosProfile
  • DTC
  • DTS

AP9 — Tools and Viewers

  • DdsView
  • LogViewer
  • SqlBrowser

Release 1 Modules

  • TetraIF (5 targets): TetraIF, TetraIFCommon, TetraIFServices, TetraIFUtils, TetraIFData
  • Z Module (16 targets): Complete Z graphics framework
  • Lts/Common utilities and services

Test Framework

  • Google Test (gtest)
  • Google Mock (gmock)

Build System

Prerequisites

  • Ubuntu 24.04 or compatible
  • CMake 3.28+
  • Ninja build system
  • Python 3.10+
  • Qt 6.10.2 (installed via aqt)

Qt6 Installation

Qt6 is installed using aqt (not apt packages):

pip3 install --break-system-packages --quiet aqtinstall
aqt install-qt linux desktop 6.10.2 linux_gcc_64 \
  -m qtmultimedia qtserialport qtimageformats qtwebsockets qtwebengine \
     qtpdf qtwebview qt5compat qtwebchannel qtpositioning qtlocation qtsensors \
  --outputdir /opt/Qt

Required Qt Modules:

  • QtMultimedia
  • QtSerialPort
  • QtImageFormats
  • QtWebSockets
  • QtWebEngine
  • QtPdf
  • QtWebView
  • Qt5Compat
  • QtWebChannel
  • QtPositioning
  • QtLocation
  • QtSensors

System Dependencies

apt-get install -y \
  build-essential \
  cmake \
  ninja-build \
  git \
  python3-pip \
  libboost-all-dev \
  libkf6texttemplate-dev \
  libgtest-dev \
  libgmock-dev \
  libpq-dev \
  libvlc-dev \
  libssl-dev \
  libxml2-dev \
  libxerces-c-dev

Docker Build

Build the Release 2 Docker image:

docker build -f Dockerfile.release2 -t guez-release2:2.0 .

Or use the build script:

./new_docker_build_release2.sh

DEB Packages

Release 2 produces 5 Debian packages:

  1. guez-build-pipeline_2.0_amd64.deb - Build tools and CMake config
  2. guez-runtime_2.0_amd64.deb - Runtime libraries (Lts, DDS, Z, TetraIF)
  3. guez-ctest-runtime_2.0_amd64.deb - CTest runtime and test executables
  4. guez-ctest-sources_2.0_amd64.deb - CTest source files
  5. guez-sources_2.0_amd64.deb - Complete source package

Target List (37 Total)

GROUP1: DDS Middleware (6 targets)

  • Lts/DDS/Core
  • Lts/DDS/DDSConnector
  • Lts/DDS/Routing
  • Lts/DDS/QosProfile
  • Lts/DDS/DTC
  • Lts/DDS/DTS

GROUP3: Shared Libraries + TetraIF + Tests (28 targets)

  • Lts/Common/LtsUtils
  • Lts/Common/LtsWidgets
  • Lts/Common/LtsSession
  • Lts/Common/LtsPluginManager
  • Lts/Common/CodeGen (ngl_codegen)
  • Z module (16 targets)
  • TetraIF (5 targets)
  • external-dependencies/googletest/gtest
  • external-dependencies/googletest/gmock

GROUP5: Viewer Tools (3 targets)

  • Lts/Tools/DdsView
  • Lts/Tools/LogViewer
  • Lts/Tools/SqlBrowser

GROUP6: Code Generation Tools (1 target)

  • Lts/Common/CodeGen/ngl_codegen

Known Absent Modules

Krypto ❌

  • Status: ABSENT from codebase
  • Reason: Module not found in repository
  • Impact: Excluded from Release 2 scope
  • Original plan: 38 targets → Actual: 37 targets

Testing

Run CTest suite:

cd build
ctest --output-on-failure -j$(nproc)

Verification

All 37 targets verified with:

  • ✅ Source files (.cpp, .h)
  • ✅ CMakeLists.txt build configuration
  • ✅ Proper directory structure

See RELEASE_2_SOURCE_VERIFICATION_REPORT.md for detailed verification.

Branch Information

  • Delivery Branch: story/create-release-two-delivery-25_11_2026
  • Reference Branch: story/release-validation-scope
  • Parent Repository: qt6-migration-pipeline

License

Proprietary - Guez Project