From 08bdbcd9f3a3553b810b8bd758e4a022f52c3ae3 Mon Sep 17 00:00:00 2001 From: Artur Sharafutdinov Date: Tue, 1 Sep 2026 16:33:42 +0200 Subject: [PATCH 1/4] CI: Introduce a separate dependency list for Ubuntu packages Ubuntu 26.04 has a kind of a issue: installing build-essential and libopenmpi-dev (an indirect dependency of libocct-data-exchange-dev) results in installing two versions of libstdc++, 15 and 16, which in turn causes building errors. The most simple solution (explicit installation of gfortran-15) can be applied to CI but is not suitable for end users. This change overcomes the libopenmpi-dev installation by replacing some development packages with runtime ones for end-user .deb packages. --- requirements/ubuntu-package.txt | 30 ++++++++++++++++++++++++++++++ scripts/distribution.sh | 2 +- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 requirements/ubuntu-package.txt diff --git a/requirements/ubuntu-package.txt b/requirements/ubuntu-package.txt new file mode 100644 index 000000000000..ef27cbd09b14 --- /dev/null +++ b/requirements/ubuntu-package.txt @@ -0,0 +1,30 @@ +build-essential +cmake +libblosc1 +libboost-dev +libboost-locale-dev +libboost-program-options-dev +libcurl4 +libeigen3-dev +libexpected-dev +libfmt-dev +libfreetype6 +libgdcm3.0 +libglfw3-dev +libgtk-3-0 +libhidapi-dev +libhpdf-2.3.0 +libjsoncpp-dev +libocct-data-exchange-7.5 | libocct-data-exchange-7.6 | libocct-data-exchange-7.9 +libpython3-dev +libspdlog-dev +libssl3 +libtbb-dev +libtiff5 | libtiff6 +libtinyxml2-9 | libtinyxml2-10 | libtinyxml2-11 +libturbojpeg | libturbojpeg0 +libzip4 | libzip5 +libzstd1 +occt-misc +pkg-config +python3-venv diff --git a/scripts/distribution.sh b/scripts/distribution.sh index ebd7755a9f03..24dff57f48e4 100755 --- a/scripts/distribution.sh +++ b/scripts/distribution.sh @@ -54,7 +54,7 @@ fi echo ${MR_VERSION} > distr/meshlib-dev${MR_INSTALL_RES_DIR}/mr.version BASE_DIR=$(realpath $(dirname "$0")/..) -REQUIREMENTS_FILE="${BASE_DIR}/requirements/ubuntu.txt" +REQUIREMENTS_FILE="${BASE_DIR}/requirements/ubuntu-package.txt" # convert multi-line file to comma-separated string DEPENDS_LINE=$(cat ${REQUIREMENTS_FILE} | tr '\n' ',' | sed -e "s/,\s*$//" -e "s/,/, /g") From 7361520ad9f7f68f55827ad1a1fe000aeb690071 Mon Sep 17 00:00:00 2001 From: Artur Sharafutdinov Date: Tue, 1 Sep 2026 17:19:26 +0200 Subject: [PATCH 2/4] Fix package list --- requirements/ubuntu-package.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/requirements/ubuntu-package.txt b/requirements/ubuntu-package.txt index ef27cbd09b14..a8e30fef1614 100644 --- a/requirements/ubuntu-package.txt +++ b/requirements/ubuntu-package.txt @@ -1,9 +1,14 @@ build-essential cmake libblosc1 +libboost-atomic-dev +libboost-chrono-dev libboost-dev +libboost-iostreams-dev libboost-locale-dev libboost-program-options-dev +libboost-system-dev +libboost-thread-dev libcurl4 libeigen3-dev libexpected-dev @@ -11,11 +16,13 @@ libfmt-dev libfreetype6 libgdcm3.0 libglfw3-dev +libglib2.0-0 libgtk-3-0 libhidapi-dev libhpdf-2.3.0 libjsoncpp-dev libocct-data-exchange-7.5 | libocct-data-exchange-7.6 | libocct-data-exchange-7.9 +libpng16-16 libpython3-dev libspdlog-dev libssl3 @@ -23,8 +30,9 @@ libtbb-dev libtiff5 | libtiff6 libtinyxml2-9 | libtinyxml2-10 | libtinyxml2-11 libturbojpeg | libturbojpeg0 +libxcb1 libzip4 | libzip5 -libzstd1 occt-misc pkg-config python3-venv +zlib1g From 9366c5e4ba9792eb662c0210075c0826c4bf08c2 Mon Sep 17 00:00:00 2001 From: Artur Sharafutdinov Date: Tue, 1 Sep 2026 18:05:04 +0200 Subject: [PATCH 3/4] Fix package list --- requirements/ubuntu-package.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements/ubuntu-package.txt b/requirements/ubuntu-package.txt index a8e30fef1614..6759d42371e7 100644 --- a/requirements/ubuntu-package.txt +++ b/requirements/ubuntu-package.txt @@ -1,6 +1,6 @@ build-essential cmake -libblosc1 +libblosc-dev libboost-atomic-dev libboost-chrono-dev libboost-dev @@ -13,7 +13,7 @@ libcurl4 libeigen3-dev libexpected-dev libfmt-dev -libfreetype6 +libfreetype-dev libgdcm3.0 libglfw3-dev libglib2.0-0 @@ -35,4 +35,4 @@ libzip4 | libzip5 occt-misc pkg-config python3-venv -zlib1g +zlib1g-dev From 52e88f5dfb2160ec2ce6483a73a3336fb4f5a059 Mon Sep 17 00:00:00 2001 From: Artur Sharafutdinov Date: Tue, 1 Sep 2026 18:43:37 +0200 Subject: [PATCH 4/4] Trigger rebuild