jurplel / install-qt-action

Install Qt on your Github Actions workflows with just one simple action
MIT License
459 stars 79 forks source link

Add support to linux arm64 #248

Open patrickelectric opened 1 month ago

patrickelectric commented 1 month ago

Is this possible ?

pzhlkj6612 commented 1 month ago

Hi! Did you try that? This action and its backend will install Qt for you. Maybe you don't know how to specify parameters?

patrickelectric commented 1 month ago

Hi! Did you try that? This action and its backend will install Qt for you. Maybe you don't know how to specify parameters?

You can check the action here, it already works for Linux, windows and Mac, it's failing for linux-arm. https://github.com/bluerobotics/ping-viewer/actions/runs/9822633870/job/27119577771

patrickelectric commented 1 month ago

It's installing GCC x64 for arm.

pzhlkj6612 commented 1 month ago

it already works for Linux, windows and Mac, it's failing for linux-arm. https://github.com/bluerobotics/ping-viewer/actions/runs/9822633870/job/27119577771

It's installing GCC x64 for arm.

OK.

The workflow config of build (ubuntu-22-arm, pingviewer-Release-Arm.AppImage):

  run: jurplel/install-qt-action@v4
  with:
    version: 5.15.2
    target: desktop
    modules: qtcharts
    setup-python: false
    install-deps: true
    cache: false
    cache-key-prefix: install-qt-action
    add-tools-to-path: true
    set-env: true
    no-qt-binaries: false
    tools-only: false
    aqtversion: ==3.1.*
    py7zrversion: ==0.20.*
    source: false
    documentation: false
    examples: false

It failed because:

The good news is that you may be able to install Qt arm64 with aqtinstall directly. Please try these commands [^3][^4]:

[^1]: Search "arm64" and compare the result between https://doc.qt.io/qt-6.6/supported-platforms.html and https://doc.qt.io/qt-6.7/supported-platforms.html [^2]: Host check: https://github.com/jurplel/install-qt-action/blob/f03f05556819ceb3781ee2f455ec44c339d683c0/action/src/main.ts#L116-L140 [^3]: Copied from https://github.com/jurplel/install-qt-action/blob/f03f05556819ceb3781ee2f455ec44c339d683c0/action/src/main.ts#L289-L331 [^4]: Copied from https://github.com/jurplel/install-qt-action/blob/f03f05556819ceb3781ee2f455ec44c339d683c0/action/src/main.ts#L347-L381

set -e
sudo apt-get install build-essential libgl1-mesa-dev libgstreamer-gl1.0-0 libpulse-dev libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb1 libxkbcommon-dev libxkbcommon-x11-0 libxcb-xkb-dev -y
python3 -m pip install setuptools wheel py7zr==0.20.*
python3 -m pip install aqtinstall==3.1.*
python3 -m aqt version
python3 -m aqt install-qt linux_arm64 desktop 6.7.2 --autodesktop --outputdir /home/runner/work/ping-viewer/Qt --modules qtcharts

If everything goes well, I think you will see linux_gcc_arm64 during the Qt installation.


This action is not actively maintained, thus new features of its backend (i.e., aqtinstall) will not be quickly adapted. If above commands don't help you, you can search and raise issues in aqtinstall's repository.

jurplel commented 1 month ago

This action is not actively maintained, thus new features of its backend

I wouldn't quite go that far—it does sometimes take me quite a while to find time to look into issues/PRs.

I would also definitely accept a PR providing support for this.