Merge remote branch + Submodule-Fix + Qt6.10.2 Dockerfile
This commit is contained in:
3 files changed
+28
-14
No files matched your search
@@ -1,3 +1,4 @@
|
||||
[submodule "qt5-before/qt5-legatus-legacy"]
|
||||
path = qt5-before/qt5-legatus-legacy
|
||||
url = git@devel:lifemaps/qt5-legatus-legacy.git
|
||||
branch = story/qt6-migration
|
||||
+26
-13
@@ -1,10 +1,20 @@
|
||||
FROM ubuntu:26.04
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV QT_VERSION=6.10.2
|
||||
ENV QT_ARCH=linux_gcc_64
|
||||
ENV QT_BASE_DIR=/opt/Qt
|
||||
ENV QT_ROOT=/opt/Qt/6.10.2/gcc_64
|
||||
ENV Qt6_ROOT=/opt/Qt/6.10.2/gcc_64
|
||||
ENV CMAKE_PREFIX_PATH=/usr/local:/opt/Qt/6.10.2/gcc_64
|
||||
ENV PATH=/opt/Qt/6.10.2/gcc_64/bin:$PATH
|
||||
ENV LD_LIBRARY_PATH=/opt/Qt/6.10.2/gcc_64/lib:${LD_LIBRARY_PATH:-}
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
clang-format \
|
||||
cmake \
|
||||
ninja-build \
|
||||
@@ -14,17 +24,6 @@ RUN apt-get update && \
|
||||
ca-certificates \
|
||||
openssh-client \
|
||||
pkg-config \
|
||||
qtbase5-dev \
|
||||
qt6-base-dev \
|
||||
qt6-base-dev-tools \
|
||||
qt6-tools-dev \
|
||||
qt6-tools-dev-tools \
|
||||
qt6-svg-dev \
|
||||
qt6-websockets-dev \
|
||||
qt6-serialport-dev \
|
||||
qt6-multimedia-dev \
|
||||
qt6-declarative-dev \
|
||||
libpoppler-qt6-dev \
|
||||
libpq-dev \
|
||||
libbz2-dev \
|
||||
libboost-all-dev \
|
||||
@@ -33,14 +32,22 @@ RUN apt-get update && \
|
||||
libcurl4-openssl-dev && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install Qt 6.10.2 via aqtinstall
|
||||
RUN python3 -m venv /opt/venv && \
|
||||
/opt/venv/bin/pip install --upgrade pip setuptools wheel && \
|
||||
/opt/venv/bin/pip install aqtinstall && \
|
||||
mkdir -p "${QT_BASE_DIR}" && \
|
||||
/opt/venv/bin/python -m aqt install-qt linux desktop "${QT_VERSION}" "${QT_ARCH}" -m qtmultimedia qtserialport qtimageformats qtwebsockets qtwebengine qtpdf qtwebview --outputdir "${QT_BASE_DIR}" && \
|
||||
test -f "${QT_ROOT}/lib/cmake/Qt6/Qt6Config.cmake"
|
||||
|
||||
# Install Log4Qt for Qt6
|
||||
RUN git clone --depth 1 https://github.com/MEONMedical/Log4Qt.git /tmp/log4qt && \
|
||||
cd /tmp/log4qt && \
|
||||
mkdir -p build && cd build && \
|
||||
cmake -DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=20 \
|
||||
-DCMAKE_CXX_STANDARD=23 \
|
||||
-DCMAKE_CXX_EXTENSIONS=OFF \
|
||||
-DCMAKE_PREFIX_PATH="/usr" \
|
||||
-DCMAKE_PREFIX_PATH="${QT_ROOT}" \
|
||||
-DCMAKE_INSTALL_PREFIX="/usr/local" \
|
||||
-DBUILD_SHARED_LIBS=ON .. && \
|
||||
cmake --build . -- -j$(nproc) && \
|
||||
@@ -62,6 +69,12 @@ set(Log4Qt_INCLUDE_DIRS "/usr/local/include" CACHE INTERNAL "Log4Qt include dir"
|
||||
set(Log4Qt_LIBRARIES "/usr/local/lib/liblog4qt.so" CACHE INTERNAL "Log4Qt library")
|
||||
EOF
|
||||
|
||||
# Set Qt platform for headless testing
|
||||
# ArcGIS SDK configuration
|
||||
ENV ARCGIS_ROOT=/repo/external/ArcGIS/MapsSDK_Qt_300.0.0/ArcGIS_Maps_SDK_Qt_300.0.0/qt300.0.0/sdk
|
||||
ENV ARCGIS_INC_DIR=${ARCGIS_ROOT}/include
|
||||
ENV ARCGIS_LIB_DIR=${ARCGIS_ROOT}/linux/x64/lib
|
||||
|
||||
# Set Qt platform for headless testing
|
||||
ENV QT_QPA_PLATFORM=offscreen
|
||||
|
||||
|
||||
Submodule qt5-before/qt5-legatus-legacy updated: d5f9b0c9cb...2d936b44b9.
Reference in new issue
Block a user