先决条件
安装
第一步是安装 Rust 和系统依赖项。请记住,此设置仅适用于开发 Tauri 应用程序。你的最终用户无需执行任何此类操作。
设置 Windows
1. Microsoft Visual Studio C++ 构建工具
你需要安装 Microsoft Visual Studio C++ 构建工具。最简单的方法是安装 Visual Studio 2022 构建工具。在询问要安装哪些工作负载时,请确保选中“C++ 构建工具”和 Windows 10 SDK。
2. WebView2
在 Windows 10(版本 1803 及更高版本,已应用所有更新)和 Windows 11 中,WebView2 运行时作为操作系统的一部分进行分发。
Tauri 在很大程度上依赖 WebView2 在 Windows 上呈现网络内容,因此你必须安装 WebView2。最简单的方法是从 Microsoft 网站 下载并运行 Evergreen Bootstrapper。
引导程序脚本将尝试确定适合你系统的正确架构和版本。不过,如果你遇到问题(尤其是 Windows on ARM),你可以选择正确的独立安装程序。
3. Rust
最后,转到 https://www.rust-lang.net.cn/tools/install 安装 rustup
(Rust 安装程序)。请注意,你必须重新启动终端,在某些情况下,Windows 本身才能使更改生效。
或者,你可以在 PowerShell 中使用以下命令通过 winget
安装 rustup
winget install --id Rustlang.Rustup
为了完全支持 Tauri 和 trunk
等工具,请确保在安装程序对话框中选择 MSVC Rust 工具链作为 默认主机三元组
。根据你的系统,它应该是 x86_64-pc-windows-msvc
、i686-pc-windows-msvc
或 aarch64-pc-windows-msvc
。
如果你已经安装了 Rust,你可以通过运行此命令确保安装了正确的工具链
rustup default stable-msvc
设置 macOS
1. CLang 和 macOS 开发依赖项
你需要安装 CLang 和 macOS 开发依赖项。为此,在终端中运行以下命令
xcode-select --install
2. Rust
要在 macOS 上安装 Rust,请打开终端并输入以下命令
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
我们已经审核了此 bash 脚本,它确实按照其说明执行了操作。不过,在盲目地 curl-bash 一个脚本之前,最好先查看一下。以下是该文件作为纯脚本的形式:rustup.sh
该命令下载一个脚本并开始安装 rustup
工具,该工具会安装 Rust 的最新稳定版本。系统可能会提示你输入密码。如果安装成功,将显示以下行
Rust is installed now. Great!
确保重启你的终端以使更改生效。
设置 Linux
1. 系统依赖项
你需要安装一些系统依赖项,例如 C 编译器和 webkit2gtk
。以下是几个流行发行版的命令
- Debian
- Arch
- Fedora/RHEL
- Gentoo
- openSUSE
- NixOS
- GNU Guix
- Void
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
sudo pacman -Syu
sudo pacman -S --needed \
webkit2gtk \
base-devel \
curl \
wget \
file \
openssl \
appmenu-gtk-module \
gtk3 \
libappindicator-gtk3 \
librsvg \
libvips
sudo dnf check-update
sudo dnf install webkit2gtk4.0-devel \
openssl-devel \
curl \
wget \
file \
libappindicator-gtk3-devel \
librsvg2-devel
sudo dnf group install "C Development Tools and Libraries"
请注意,对于 Fedora 36 及以下版本以及所有 Enterprise Linux 发行版,你需要安装 webkit2gtk3-devel
而不是 webkit2gtk4.0-devel
。对于 Enterprise Linux,你还需要 "开发工具"
而不是 "C 开发工具和库"
。例如
sudo dnf check-update
sudo dnf install webkit2gtk3-devel \
openssl-devel \
curl \
wget \
file \
libappindicator-gtk3-devel \
librsvg2-devel
sudo dnf group install "Development Tools"
sudo emerge --ask \
net-libs/webkit-gtk:4 \
dev-libs/libappindicator \
net-misc/curl \
net-misc/wget \
sys-apps/file
注意:建议使用桌面配置文件为 webkit-gtk 设置适当的 USE 标志
sudo zypper up
sudo zypper in webkit2gtk3-soup2-devel \
libopenssl-devel \
curl \
wget \
file \
libappindicator3-1 \
librsvg-devel
sudo zypper in -t pattern devel_basis
在 NixOS 上工作需要稍有不同的设置,因为 Tauri 需要在编译时和运行时动态地找到所需的系统库。为了让 Tauri 可用,LD_LIBRARY_PATH
环境变量需要填充正确路径。
当使用 Nix Flakes 时,将以下代码复制到你的存储库中的 flake.nix
,然后运行 nix develop
以激活开发环境。你还可以使用 direnv 的 Flakes 集成 在进入项目文件夹时自动启动 dev shell。
{
inputs = {
nixpkgs.url = "nixpkgs";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
libraries = with pkgs;[
webkitgtk
gtk3
cairo
gdk-pixbuf
glib
dbus
openssl_3
librsvg
];
packages = with pkgs; [
curl
wget
pkg-config
dbus
openssl_3
glib
gtk3
libsoup
webkitgtk
librsvg
];
in
{
devShell = pkgs.mkShell {
buildInputs = packages;
shellHook =
''
export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath libraries}:$LD_LIBRARY_PATH
export XDG_DATA_DIRS=${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS
'';
};
});
}
如果您不使用 Nix Flakes,则可以使用以下 shell.nix
脚本配置 Nix Shell。运行 nix-shell
以激活开发环境,或使用 direnv 的 Shell 集成 在进入项目文件夹时自动启动 dev shell。
let
pkgs = import <nixpkgs> { };
libraries = with pkgs;[
webkitgtk
gtk3
cairo
gdk-pixbuf
glib
dbus
openssl_3
];
packages = with pkgs; [
pkg-config
dbus
openssl_3
glib
gtk3
libsoup
webkitgtk
appimagekit
];
in
pkgs.mkShell {
buildInputs = packages;
shellHook =
''
export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath libraries}:$LD_LIBRARY_PATH
export XDG_DATA_DIRS=${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS
'';
}
要使用 Guix shell 创建 Tauri 开发环境,请将以下代码复制到存储库中的 manifest.scm
,然后运行 guix shell
以激活。您还可以使用 direnv 的 Guix shell 支持 在进入项目文件夹时自动启动 Guix shell。
(specifications->manifest
(list "gtk+@3"
"webkitgtk-with-libsoup2"
"libsoup-minimal@2"
"cairo"
"gdk-pixbuf"
"glib"
"dbus"
"openssl@3"
"gcc:lib"
"curl"
"wget"
"file"
"pkg-config"
"gsettings-desktop-schemas"))
sudo xbps-install -Syu
sudo xbps-install -S \
webkit2gtk-devel \
curl \
wget \
file \
openssl \
gtk+3-devel \
libappindicator \
librsvg-devel \
gcc \
pkg-config
2. Rust
要在 Linux 上安装 Rust,请打开终端并输入以下命令
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
我们已经审核了此 bash 脚本,它确实按照其说明执行了操作。不过,在盲目地 curl-bash 一个脚本之前,最好先查看一下。以下是该文件作为纯脚本的形式:rustup.sh
该命令下载一个脚本并开始安装 rustup
工具,该工具会安装 Rust 的最新稳定版本。系统可能会提示你输入密码。如果安装成功,将显示以下行
Rust is installed now. Great!
请务必重新启动终端以使更改生效。
管理 Rust 安装
您应尽可能保持 Rust 版本是最新的,以始终受益于最新的改进。要更新 Rust,请打开终端并运行以下命令
rustup update
rustup
还可以用于从您的机器上完全卸载 Rust
rustup self uninstall
Rust 故障排除
要检查您是否正确安装了 Rust,请打开 shell 并输入此命令
rustc --version
您应该会看到已发布的最新稳定版本的版本号、提交哈希和提交日期,格式如下
rustc x.y.z (abcabcabc yyyy-mm-dd)
如果您看不到此信息,则您的 Rust 安装可能已损坏。请参阅 Rust 的故障排除部分 以了解如何解决此问题。如果您的问题仍然存在,您可以从官方 Tauri Discord 和 GitHub 讨论 获得帮助。
Node.js
仅在您打算使用 JavaScript 前端框架时
转到 Node.js 网站,下载长期支持 (LTS) 版本并安装它。
通过运行检查 Node 是否成功安装
node -v
# v20.10.0
npm -v
# 10.2.3
重新启动终端以确保它识别新安装非常重要。在某些情况下,您可能需要重新启动计算机。
虽然 npm 是 Node.js 的默认包管理器,但您还可以使用其他包管理器,如 pnpm 或 yarn。要启用这些包管理器,请在终端中运行 corepack enable
。此步骤是可选的,仅在您更喜欢使用 npm 以外的包管理器时才需要。