Skip to content

Linux Qt 6

Linux Qt 6 #45

Workflow file for this run

name: Linux Qt 6
on:
workflow_dispatch:
schedule:
- cron: 0 0 */7 * *
jobs:
build:
runs-on: ubuntu-20.04
env:
CCACHE_DIR : ${{ github.workspace }}/.ccache
steps:
- name: Get CPU Info
run : cat /proc/cpuinfo
- name: Get Qt 6
run : |
mkdir qt6
cd qt6
git clone https://code.qt.io/qt/qt5.git src
cd src
git switch 6.7
perl init-repository --module-subset=qtbase,qtsvg,qttools,qtimageformats,qttranslations
- name : Get dependenies
run : |
sudo apt update
sudo apt upgrade -y cmake ninja-build gcc g++
sudo apt install -y libgl1-mesa-dev libglu1-mesa-dev libclang-10-dev libclang-11-dev ccache libclang-12-dev
sudo apt install -y libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-xinerama0-dev libxkbcommon-dev libxkbcommon-x11-dev
sudo apt install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
- name : Get time
id : time
run : echo "now=`date +%s`" >> $GITHUB_OUTPUT
- name: Cache ccache
id: qt-ccahe
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/.ccache
key: ${{ runner.os }}-build-qt6-${{ steps.time.outputs.now }}
restore-keys: |
${{ runner.os }}-build-qt6-
- name: Configure
run: |
cd qt6
mkdir build
mkdir bin
cd build
../src/configure -static -prefix ../bin -cmake-generator Ninja -qt-tiff -qt-webp -qt-libpng -qt-libjpeg -release -no-icu -ccache
- name: Build
run: |
cd qt6/build
ninja install
- name: Pack
run: |
tar -czvf qt.tar.gz qt6/bin
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: qt-6.7-static-linux
path: qt.tar.gz
- name: Upload Release
#if: startsWith(github.event.ref, 'refs/tags/')
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ./qt.tar.gz
asset_name: qt-6.7-static-linux.tar.gz
tag: refs/tags/release
overwrite: true
- uses: mxschmitt/action-tmate@v3
if: ${{ failure() }}