From ce7451fa0f4a19ad43eeab7e976ac501f6dfa590 Mon Sep 17 00:00:00 2001 From: Alex Hughes Date: Thu, 30 Jan 2025 20:12:55 -0800 Subject: [PATCH] Switch to using aqt for Qt versions --- docker/genbindings.Dockerfile | 50 ++++++++++++++++------------------- 1 file changed, 23 insertions(+), 27 deletions(-) diff --git a/docker/genbindings.Dockerfile b/docker/genbindings.Dockerfile index 36ea65d9..46bb2c5f 100644 --- a/docker/genbindings.Dockerfile +++ b/docker/genbindings.Dockerfile @@ -1,19 +1,14 @@ FROM debian:bookworm +ENV QT6_VERSION=6.2.4 +ENV QT5_VERSION=5.15.2 + RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ apt-get install --no-install-recommends -qyy \ + python3 \ + python3-pip \ + python3.11-venv \ golang-go \ - qtbase5-dev \ - qtmultimedia5-dev \ - qtscript5-dev \ - libqt5svg5-dev \ - libqt5webkit5-dev \ - qtwebengine5-dev \ - qt6-base-dev \ - qt6-multimedia-dev \ - qt6-svg-dev \ - qt6-webengine-dev \ - libqscintilla2-qt5-dev \ libqscintilla2-qt6-dev \ clang \ git \ @@ -21,23 +16,24 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ pkg-config \ build-essential && \ apt-get clean - -RUN mkdir -p /usr/local/src/scintilla && \ - git clone 'https://github.com/mirror/scintilla.git' /usr/local/src/scintilla && \ - git -C /usr/local/src/scintilla checkout rel-5-5-2 - -RUN \ - cd /usr/local/src/scintilla/qt/ScintillaEditBase && \ - qmake && \ - make && \ - cd /usr/local/src/scintilla/qt/ScintillaEdit && \ - python3 WidgetGen.py && \ - qmake && \ - make -RUN mkdir -p /usr/local/lib/pkgconfig +RUN python3 -m venv /opt/virtualenvironment +ENV PATH="/opt/virtualenvironment/bin:$PATH" +RUN python3 -m pip install aqtinstall + +RUN aqt install-qt linux desktop $QT5_VERSION gcc_64 --outputdir /opt/Qt +ENV PATH=/opt/Qt/$QT5_VERSION/gcc_64/bin:$PATH +ENV LD_LIBRARY_PATH=/opt/Qt/$QT5_VERSION/gcc_64/lib +ENV QT_PLUGIN_PATH=/opt/Qt/$QT5_VERSION/gcc_64/plugins +ENV QTDIR=/opt/Qt/$QT5_VERSION/gcc_64 +ENV PKG_CONFIG_PATH=/opt/Qt/$QT5_VERSION/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH + +RUN aqt install-qt linux desktop $QT6_VERSION gcc_64 --outputdir /opt/Qt +ENV PATH=/opt/Qt/$QT6_VERSION/gcc_64/bin:$PATH +ENV LD_LIBRARY_PATH=/opt/Qt/$QT6_VERSION/gcc_64/lib +ENV QT_PLUGIN_PATH=/opt/Qt/$QT6_VERSION/gcc_64/plugins +ENV QTDIR=/opt/Qt/$QT6_VERSION/gcc_64 +ENV PKG_CONFIG_PATH=/opt/Qt/$QT6_VERSION/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH -COPY pkg-config/QScintilla.pc.example /usr/local/lib/pkgconfig/QScintilla.pc -COPY pkg-config/ScintillaEdit.pc.example /usr/local/lib/pkgconfig/ScintillaEdit.pc ENV GOFLAGS=-buildvcs=false