Skip to content

Update to Qt 6.8

Update to Qt 6.8 #320

Workflow file for this run

name: Linux build
on:
push:
branches: '*'
tags: '*'
pull_request:
branches: [ "master" ]
jobs:
build:
runs-on: ubuntu-20.04
strategy:
matrix:
qt-version: ['6.8']
qt-target: ['desktop']
qt-modules: ['']
arch: ['amd64']
ubuntu-version: ['20.04']
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: 'recursive'
- name: Setup environment
run: |
sed -i -e '/^#/d' .github/config.env
sed -i -e '/^$/d' .github/config.env
cat .github/config.env >> "${GITHUB_ENV}"
shell: bash
- if: contains(matrix.arch, 'amd64')
name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libxkbcommon-x11-0
shell: bash
- name: Install GCC11
shell: bash
run: |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-11 g++-11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110 --slave /usr/bin/g++ g++ /usr/bin/g++-11 --slave /usr/bin/gcov gcov /usr/bin/gcov-11
## Install Qt
- if: contains(matrix.arch, 'amd64')
name: Install Qt (Ubuntu)
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt-version }}
host: 'linux'
arch: 'linux_gcc_64'
target: ${{ matrix.qt-target }}
modules: ${{ matrix.qt-modules }}
- if: "!contains(matrix.arch, 'amd64')"
name: Restore cross-compiled Qt from cache
id: cache-qt-cross
uses: actions/cache@v3
with:
path: |
./qt-host/
./qt-cross/
./sysroot/
key: qt-cross-${{ runner.os }}-${{ matrix.qt-version }}-${{ matrix.qt-target }}-${{ matrix.qt-modules }}-${{ matrix.arch }}
restore-keys:
qt-cross-${{ runner.os }}-${{ matrix.qt-version }}-${{ matrix.qt-target }}-${{ matrix.qt-modules }}-${{ matrix.arch }}
- if: "!contains(matrix.arch, 'amd64') && steps.cache-qt-cross.outputs.cache-hit != 'true'"
name: Cross-compile Qt
shell: bash
run: .ci/build_qt6.sh "${{ matrix.qt-version }}" "${{ matrix.qt-modules }}" "${{ matrix.arch }}"
## Build
- if: "!contains(matrix.arch, 'amd64')"
name: Prepare cross-compilation environment
run: .ci/prepare_cross_build.sh "${{ matrix.arch }}"
shell: bash
- name: Build AppImage
run: .ci/build_appimage.sh
shell: 'script -q -e -c "bash {0}"'
## Upload
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: build-Qt-${{ matrix.qt-version }}-${{ matrix.arch }}
path: |
*.AppImage
*.zsync