跳到主要内容

3.2-tauri

使用 tauri 对应用进行打包

更新 sudo 命令

sudo apt update
# 安装一系列库
sudo apt install libwebkit2gtk-4.0-dev \
build-essential \
curl \
wget \
file \
libssl-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
librsvg2-dev

安装 node

# 安装 nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# 安装 Node.js (需要重启终端)
nvm install 18

# 验证终端版本
node -v # `v18.19.1`

# 验证 npm 的版本
npm -v # `10.2.4`

# 安装 pnpm 包管理器
npm i pnpm -g
# 可以安装 node 16 来兼容旧系统,此时需要使用 npm i pnpm@8 -g 来安装 pnpm v8.15.4

安装 rust

curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

安装后记得重启终端

初始化项目

pnpm create tauri-app
# 然后选择语言
# JavaScript
# pnpm
# Vanilla
# JavaScript

cd tauri-app
pnpm install
# 此时如果可以运行,即可完成项目打包
pnpm tauri dev

安装依赖

# 安装 rust 的 target 架构
rustup target add aarch64-unknown-linux-gnu
# 安装连接器
sudo apt install gcc-aarch64-linux-gnu

在项目中添加一个 <project-root>/.cargo/config.toml 添加以下内容

[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"

[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"

添加各打包的对应平台

sudo dpkg --add-architecture arm64

/etc/apt/sources.list 文件中追加以下内容,如果是 Debian,则可以忽略该步骤。

deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy main restricted
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-updates main restricted
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy universe
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-updates universe
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy multiverse
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-updates multiverse
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-backports main restricted universe multiverse
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-security main restricted
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-security universe
deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports jammy-security multiverse

依次执行以下命令

# 更新包信息
sudo apt-get update && sudo apt-get upgrade -y
# 选择的架构所需的 webkitgtk 库
sudo apt install libwebkit2gtk-4.0-dev:arm64
# 设置 PKG_CONFIG_SYSROOT_DIR 到适当的目录
sudo apt install libssl-dev:arm64

export PKG_CONFIG_SYSROOT_DIR=/usr/aarch64-linux-gnu/

最后进行打包操作,选择其一执行,如果出现问题,请添加 --verbose 后缀,查看原因

# 使用 cargo 进行打包
cargo tauri build --target aarch64-unknown-linux-gnu
# 使用 pnpm 进行打包
pnpm tauri build

cargo

cargo run 相当于 cargo build +执行该文件

cargo check 用于检测能否通过 cargo build

cargo build --release,编译,并且会进行优化,但编译时间更长,并且在 target/release 中生成文件