mirror of
https://git.citron-emu.org/citron/emulator
synced 2026-01-31 23:03:33 +00:00
ci: Fix AppImage glibc compatibility for older Linux distributions
- Switch from Ubuntu 24.04 to Ubuntu 20.04 for better glibc compatibility - Update ICU library version from libicu74 to libicu66 for Ubuntu 20.04 - Remove qtwebengine5-dev package that may not be available in 20.04 - Add static linking flags for libgcc and libstdc++ to reduce runtime dependencies - Add ARCH and VERSION environment variables for AppImage build - This should fix the '__nptl_change_stack_perm' GLIBC_PRIVATE symbol error - AppImage will now be compatible with older Linux distributions like Nobara 42
This commit is contained in:
@@ -51,7 +51,7 @@ build-windows:
|
||||
# Linux Build (Ubuntu 24.04 optimized)
|
||||
build-linux:
|
||||
stage: build
|
||||
image: ubuntu:24.04
|
||||
image: ubuntu:20.04
|
||||
tags:
|
||||
- linux
|
||||
- ubuntu
|
||||
@@ -69,10 +69,10 @@ build-linux:
|
||||
- apt-get install -y -qq libssl-dev libboost-all-dev libboost-context-dev
|
||||
- apt-get install -y -qq libstb-dev libopus-dev libenet-dev libsimpleini-dev
|
||||
- apt-get install -y -qq libvulkan-dev
|
||||
- apt-get install -y -qq qtbase5-dev qtbase5-private-dev qtwebengine5-dev qtmultimedia5-dev
|
||||
- apt-get install -y -qq qtbase5-dev qtbase5-private-dev qtmultimedia5-dev
|
||||
- apt-get install -y -qq libqt5core5a libqt5gui5 libqt5widgets5 libqt5dbus5
|
||||
- apt-get install -y -qq qt5-image-formats-plugins qt5-gtk-platformtheme
|
||||
- apt-get install -y -qq libicu74
|
||||
- apt-get install -y -qq libicu66
|
||||
- apt-get install -y -qq mesa-common-dev libdrm-dev
|
||||
- apt-get install -y -qq nasm
|
||||
- apt-get install -y -qq glslang-tools
|
||||
@@ -80,7 +80,7 @@ build-linux:
|
||||
- apt-get install -y -qq libfuse2 gdb
|
||||
script:
|
||||
- git submodule update --init --recursive
|
||||
- cmake -B build -S . -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DENABLE_QT=ON -DENABLE_SDL2=ON -DENABLE_WEB_SERVICE=ON -DCITRON_USE_BUNDLED_VCPKG=ON -DCITRON_USE_BUNDLED_FFMPEG=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_CXX_FLAGS="-Wno-error=conversion" -DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON
|
||||
- cmake -B build -S . -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DENABLE_QT=ON -DENABLE_SDL2=ON -DENABLE_WEB_SERVICE=ON -DCITRON_USE_BUNDLED_VCPKG=ON -DCITRON_USE_BUNDLED_FFMPEG=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_CXX_FLAGS="-Wno-error=conversion" -DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON -DCMAKE_EXE_LINKER_FLAGS="-static-libgcc -static-libstdc++"
|
||||
- cmake --build build --config $BUILD_TYPE --parallel $CMAKE_BUILD_PARALLEL_LEVEL
|
||||
- echo "Build completed, checking for executables..."
|
||||
- ls -la build/bin/ || echo "No build/bin directory found"
|
||||
@@ -90,6 +90,8 @@ build-linux:
|
||||
- chmod +x AppImage-build-local.sh
|
||||
- echo "Attempting AppImage build with FUSE workaround..."
|
||||
- export APPIMAGE_EXTRACT_AND_RUN=1
|
||||
- export ARCH=x86_64
|
||||
- export VERSION=$(git describe --tags --always)
|
||||
- ./AppImage-build-local.sh || echo "AppImage build failed, continuing..."
|
||||
artifacts:
|
||||
paths:
|
||||
|
||||
Reference in New Issue
Block a user