Skip to content

arm64 support - 2

arm64 support - 2 #63

Workflow file for this run

name: Automated Builds
env:
QT_VERSION: '6.7.3'
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
workflow_dispatch:
branches: [ "master" ]
jobs:
build:
runs-on: ubuntu-22.04
steps:
- name: Download source codes
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update -y
sudo apt-get install -y build-essential ninja-build patchelf libfuse2 libglib2.0-dev
pip install aqtinstall
- name: Install Qt
run: |
python3 -m aqt install-qt linux desktop $QT_VERSION linux_gcc_64 -O /tmp/qt
python3 -m aqt install-qt linux_arm64 desktop $QT_VERSION linux_gcc_arm64 -O /tmp/qt
- name: Build for amd64
run: |
chmod +x /tmp/qt/$QT_VERSION/gcc_64/bin/qt-cmake
/tmp/qt/$QT_VERSION/gcc_64/bin/qt-cmake \
-S . \
-B build-amd64 \
-G Ninja \
-D CMAKE_BUILD_TYPE=Release
cmake --build build-amd64 --parallel --config Release
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
with:
platforms: arm64
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Build for Linux arm64
run: |
sudo docker run \
--rm \
--platform linux/arm64 \
-v /tmp/qt:/tmp/qt \
-v `pwd`:/tmp/qtapp \
arm64v8/ubuntu:22.04 \
bash -c '
cd /tmp/qtapp
apt-get update -y
apt-get install -y build-essential cmake ninja-build patchelf libfuse2 libglib2.0-dev
chmod +x /tmp/qt/'"$QT_VERSION"'/gcc_arm64/bin/qt-cmake
/tmp/qt/'"$QT_VERSION"'/gcc_arm64/bin/qt-cmake \
-S . \
-B build-arm64 \
-G Ninja \
-D CMAKE_BUILD_TYPE=Release
cmake --build build-arm64 --parallel --config Release
'
- name: Publish build artifacts
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
automatic_release_tag: latest
title: latest
prerelease: false
files: build/deploy/*.AppImage