Improve/fix debian docker build (#17003)

* fix paths following past renames

* add missing dependencies

* switch to debian:12 (bookworm)

* patch opencascade to silence warnings
This commit is contained in:
Zbyněk Winkler
2024-11-22 17:37:33 +01:00
committed by GitHub
parent 2c1348fdc2
commit d2e407d096
3 changed files with 18 additions and 7 deletions

View File

@@ -1,4 +1,4 @@
FROM debian:bullseye
FROM debian:12
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
@@ -12,6 +12,16 @@ RUN apt-get update && \
sh /tmp/debian.sh && \
mkdir /builds
# Debian 12 (bookworm) contains opencascade 7.6.x which contains deprecated constructs
# (inheriting from std::iterator) which have been fixed in 7.7.x
# lets bring the changes here to have less warnings during the build
# https://github.com/Open-Cascade-SAS/OCCT/commit/8af9bbd59aecf24c765e7ea0eeeb8c9dd5c1f8db
RUN apt-get install curl --yes
RUN curl --silent --location --output-dir /usr/include/opencascade/ \
--remote-name https://github.com/Open-Cascade-SAS/OCCT/raw/8af9bbd59aecf24c765e7ea0eeeb8c9dd5c1f8db/src/NCollection/NCollection_StlIterator.hxx --next \
--remote-name https://github.com/Open-Cascade-SAS/OCCT/raw/8af9bbd59aecf24c765e7ea0eeeb8c9dd5c1f8db/src/OSD/OSD_Parallel.hxx
WORKDIR /builds
VOLUME [ "/builds" ]

View File

@@ -73,7 +73,7 @@ The following commands are used to create and run a Arch Linux build environment
.. code-block:: console
docker build --file tools/build/Dockerfile.Arch --tag freecad-arch
docker build --file tools/build/Docker/Dockerfile.Arch --tag freecad-arch
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-arch
@@ -84,7 +84,7 @@ The following commands are used to create and run a Debian build environment.
.. code-block:: console
docker build --file tools/build/Dockerfile.Debian --tag freecad-debian
docker build --file tools/build/Docker/Dockerfile.Debian --tag freecad-debian
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-debian
@@ -95,7 +95,7 @@ The following commands are used to create and run a Fedora build environment.
.. code-block:: console
docker build --file tools/build/Dockerfile.Fedora --tag freecad-fedora
docker build --file tools/build/Docker/Dockerfile.Fedora --tag freecad-fedora
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-fedora
@@ -106,7 +106,7 @@ The following commands are used to create and run a Manjaro build environment.
.. code-block:: console
docker build --file tools/build/Dockerfile.Manjaro --tag freecad-manjaro
docker build --file tools/build/Docker/Dockerfile.Manjaro --tag freecad-manjaro
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-manjaro
@@ -118,7 +118,7 @@ The following commands are used to create and run a Ubuntu build environment.
.. code-block:: console
docker build --file tools/build/Dockerfile.Ubuntu --tag freecad-ubuntu
docker build --file tools/build/Docker/Dockerfile.Ubuntu --tag freecad-ubuntu
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-ubuntu

View File

@@ -12,4 +12,5 @@ apt-get install --no-install-recommends --yes build-essential cmake doxygen \
libvtk-dicom-dev libx11-dev libxerces-c-dev libxmu-dev libxmuu-dev \
libzipios++-dev netgen netgen-headers pyside2-tools python3-dev \
python3-matplotlib python3-pivy python3-ply python3-pyside2.qtsvg \
python3-pyside2.qtuitools qtchooser qttools5-dev shiboken2 swig
python3-pyside2.qtuitools qtchooser qttools5-dev shiboken2 swig \
python3-pyside2.qtnetwork libyaml-cpp-dev