From 21ba06cd9490a15da9455e12461ed2ab470166f4 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Fri, 10 Jul 2026 09:49:46 +1000 Subject: [PATCH] ci: install FLTK's X11/pango/cairo + static libstdc++ for the connector link With dbus-devel added, the connector's Rust code compiles fully and reaches the final link, which fails: the bundled FLTK GUI toolkit needs the X11 extension, pango and cairo shared libs, plus libsupc++.a. ld reports every unresolved -l at once, so this is the complete set: -lXext -lXinerama -lXcursor -lXrender -lXfixes -lXft -lpango-1.0 -lpangoxft-1.0 -lpangocairo-1.0 -lcairo -lsupc++ The X/pango/cairo -devel packages are in AppStream; libstdc++-static (libsupc++.a) is in CRB, so enable it for the transaction. GitHub's ubuntu runners ship all of this, which is why the dedicated connector workflow never needed it. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/build_rocky.yml | 9 +++++++-- .github/workflows/build_rocky_arm.yml | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build_rocky.yml b/.github/workflows/build_rocky.yml index 2c9ed0158b..2841ad6e34 100644 --- a/.github/workflows/build_rocky.yml +++ b/.github/workflows/build_rocky.yml @@ -20,13 +20,18 @@ jobs: run: | dnf update -y dnf install -y epel-release - dnf install -y gcc gcc-c++ git autoconf automake bison make zip cmake python3 python3-pip \ + # --enablerepo=crb: libstdc++-static (libsupc++.a, needed by the + # bundled FLTK link) lives in Rocky's CodeReady Builder repo, which + # is disabled by default. + dnf install -y --enablerepo=crb gcc gcc-c++ git autoconf automake bison make zip cmake python3 python3-pip \ bzip2 patch mesa-libGL-devel libffi-devel fontconfig-devel \ sqlite-devel bzip2-devel zlib-devel openssl-devel xz-devel \ readline-devel ncurses-devel libffi-devel libuuid-devel git-lfs \ findutils xz byacc patchelf libxkbcommon-devel \ python3.11 python3.11-pip python3.11-tkinter \ - dbus-devel + dbus-devel \ + libXext-devel libXinerama-devel libXcursor-devel libXrender-devel \ + libXfixes-devel libXft-devel pango-devel cairo-devel libstdc++-static python3 -m pip install typing_extensions aqtinstall git config --global --add safe.directory '*' python3.11 -c "import tkinter; print('Tk', tkinter.TkVersion)" diff --git a/.github/workflows/build_rocky_arm.yml b/.github/workflows/build_rocky_arm.yml index f026372afa..9d6b5b9754 100644 --- a/.github/workflows/build_rocky_arm.yml +++ b/.github/workflows/build_rocky_arm.yml @@ -32,12 +32,17 @@ jobs: run: | dnf update -y dnf install -y epel-release - dnf install -y gcc gcc-c++ git autoconf automake bison make zip cmake python3 python3-pip \ + # --enablerepo=crb: libstdc++-static (libsupc++.a, needed by the + # bundled FLTK link) lives in Rocky's CodeReady Builder repo, which + # is disabled by default. + dnf install -y --enablerepo=crb gcc gcc-c++ git autoconf automake bison make zip cmake python3 python3-pip \ bzip2 patch mesa-libGL-devel libffi-devel fontconfig-devel \ sqlite-devel bzip2-devel zlib-devel openssl-devel xz-devel \ readline-devel ncurses-devel libffi-devel libuuid-devel git-lfs \ findutils xz byacc patchelf libxkbcommon-devel \ - python3-tkinter dbus-devel + python3-tkinter dbus-devel \ + libXext-devel libXinerama-devel libXcursor-devel libXrender-devel \ + libXfixes-devel libXft-devel pango-devel cairo-devel libstdc++-static python3 -m pip install typing_extensions aqtinstall git config --global --add safe.directory '*' python3 -c "import tkinter; print('Tk', tkinter.TkVersion)"