我是 Github Actions 和 Workflows 的新手,我正在尝试使用 Make 构建一个简单的应用程序。 Github 有一个工作流程模板,“C/C++ with Make,”,我能够轻松地格式化存储库中的构建指令。当我运行该操作时,它成功完成,但没有创建任何工件。我希望运行
Make
会生成一个工件文件(我已经使用现有的应用程序构建操作分叉了其他存储库,并且在运行 those 操作后我能够在工件中找到编译后的 .exe。这就是这个操作我自己写的,我遇到了麻烦。)
原始构建说明是:
sudo apt install make gcc qtmultimedia5-dev libogg-dev libopus-dev libgl1-mesa-dev build-essential libssl-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gcc-multilib qttools5-dev-tools
find ./ -name '*.ts' -exec lrelease {} \;
qmake buildme.pro
make -j$(nproc)
我的
Build.yml
代码是:
name: Build
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: update outdated dependei
run: sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
- name: apt update
run: sudo apt-get update
- name: install dependencies
run: sudo apt install -y --fix-missing make gcc qtmultimedia5-dev libogg-dev libopus-dev libgl1-mesa-dev build-essential libssl-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gcc-multilib qttools5-dev-tools
- name: find file
run: find ./ -name '*.ts' -exec lrelease {} \;
- name: qmake
run: qmake buildme.pro
- name: make
run: make -j$(nproc)
我承认我对 Make 或 Qmake 不够熟悉,不知道是否需要添加进一步的指令才能获得可执行文件。我是不是错过了什么?
您的操作不会上传任何工件。您可以使用 actions/upload-artifact 来做到这一点:
- uses: actions/upload-artifact@v3
with:
name: program.exe
path: "path/to/program.exe"