Files
Pake/docs/faq_CN.md
2025-11-13 06:36:01 +00:00

7.2 KiB
Vendored
Raw Blame History

常见问题 (FAQ)

English | 简体中文

使用 Pake 时的常见问题和解决方案。

构建问题

Windows首次构建时安装超时

问题描述: 在 Windows 上首次构建时,可能遇到:

Error: Command timed out after 900000ms: "cd ... && pnpm install"

原因分析:

Windows 首次安装可能较慢,原因包括:

  • 本地模块编译(需要 Visual Studio Build Tools
  • 大量依赖下载Tauri、Rust 工具链)
  • Windows Defender 实时扫描
  • 网络连接问题

解决方案 1自动重试内置

Pake CLI 现在会在初次安装超时后自动使用国内镜像重试。只需等待重试完成即可。

解决方案 2手动安装依赖

如果自动重试失败,可手动安装依赖:

# 进入 pake-cli 安装目录
cd %LOCALAPPDATA%\pnpm\global\5\.pnpm\pake-cli@版本号\node_modules\pake-cli

# 使用国内镜像安装
pnpm install --registry=https://registry.npmmirror.com

# 然后重新构建
pake https://github.com --name GitHub

解决方案 3改善网络环境

  • 使用稳定的网络连接
  • 安装过程中临时关闭杀毒软件
  • 必要时使用 VPN 或代理

预期时间:

  • 首次安装Windows 上需要 10-15 分钟
  • 后续构建:依赖已缓存,速度会快很多

LinuxAppImage 构建失败,提示 "failed to run linuxdeploy"

问题描述: 在 Linux 系统Debian、Ubuntu、Arch 等)上构建 AppImage 时,可能遇到如下错误:

Error: failed to run linuxdeploy
Error: strip: Unable to recognise the format of the input file

解决方案 1自动 NO_STRIP 重试(推荐)

Pake CLI 已在 linuxdeploy 剥离失败时自动使用 NO_STRIP=1 进行二次构建。如果你希望一开始就跳过剥离步骤(或在脚本中使用),可以手动设置该变量:

NO_STRIP=1 pake https://example.com --name MyApp --targets appimage

这会绕过经常在某些 Linux 发行版上出现问题的库文件剥离过程。

解决方案 2安装系统依赖

如果 NO_STRIP 不起作用,确保已安装所有必需的系统依赖:

sudo apt update
sudo apt install -y \
  libdbus-1-dev \
  libsoup-3.0-dev \
  libjavascriptcoregtk-4.1-dev \
  libwebkit2gtk-4.1-dev \
  build-essential \
  curl wget file \
  libxdo-dev \
  libssl-dev \
  libgtk-3-dev \
  libayatana-appindicator3-dev \
  librsvg2-dev \
  gnome-video-effects \
  libglib2.0-dev \
  libgirepository1.0-dev \
  pkg-config

然后再次尝试构建(也可以提前设置 NO_STRIP=1)。

解决方案 3改用 DEB 格式

DEB 包在基于 Debian 的系统上更稳定:

pake https://example.com --name MyApp --targets deb

解决方案 4使用 Docker需开放 FUSE

在干净的环境中构建无需安装依赖。AppImage 工具需要访问 /dev/fuse,因此需要以特权模式运行(或显式授权 FUSE

docker run --rm --privileged \
  --device /dev/fuse \
  --security-opt apparmor=unconfined \
  -v $(pwd)/output:/output \
  ghcr.io/tw93/pake:latest \
  https://example.com --name MyApp --targets appimage

提示: 生成的 AppImage 可能属于 root需要执行 sudo chown $(id -nu):$(id -ng) ./output/MyApp.AppImage 调整所有权。

原因:

这是 Tauri 的 linuxdeploy 工具的已知问题,在以下情况下可能失败:

  • 系统库的格式不兼容剥离操作
  • 在较新的发行版上构建Arch、Debian Trixie 等)
  • 缺少 WebKit2GTK 或 GTK 开发库

NO_STRIP=1 环境变量是 Tauri 社区推荐的官方解决方法。


Linux"cargo: command not found" 即使已安装 Rust

问题描述: 已安装 Rust 但 Pake 仍然提示 "cargo: command not found"。

解决方案:

Pake CLI 会自动重新加载 Rust 环境,但如果问题仍然存在:

# 在当前终端重新加载环境
source ~/.cargo/env

# 或者重启终端

然后再次尝试构建。


macOS构建失败出现模块编译错误

问题描述: 在 macOS 26 Beta 或更新版本上,可能看到与 CoreFoundation_Builtin_float 模块相关的错误。

解决方案:

创建配置文件以使用兼容的 SDK

cat > src-tauri/.cargo/config.toml << 'EOF'
[env]
MACOSX_DEPLOYMENT_TARGET = "15.0"
SDKROOT = "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk"
EOF

此文件已在 .gitignore 中,不会被提交。


Windows缺少 Visual Studio 构建工具

问题描述: 构建失败,提示缺少 MSVC 或 Windows SDK。

解决方案:

安装 Visual Studio 构建工具:

  1. 下载 Visual Studio Build Tools
  2. 安装时选择"使用 C++ 的桌面开发"
  3. ARM64 支持:在"单个组件"下额外选择"MSVC v143 - VS 2022 C++ ARM64 构建工具"

运行时问题

应用窗口太小/太大

解决方案:

构建时指定自定义尺寸:

pake https://example.com --width 1200 --height 800

查看 CLI 使用指南 了解所有窗口选项。


应用图标显示不正确

问题描述: 自定义图标没有显示或显示默认图标。

解决方案:

确保为您的平台使用正确的图标格式:

  • macOS.icns 格式
  • Windows.ico 格式
  • Linux.png 格式
# macOS
pake https://example.com --icon ./icon.icns

# Windows
pake https://example.com --icon ./icon.ico

# Linux
pake https://example.com --icon ./icon.png

Pake 可以自动转换图标,但提供正确的格式更可靠。


网站功能不工作(登录、上传等)

问题描述: 某些网站功能在 Pake 应用中无法工作。

解决方案:

这通常是由于 Web 兼容性问题。尝试:

  1. 设置自定义 User Agent

    pake https://example.com --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
    
  2. 注入自定义 JavaScript

    pake https://example.com --inject ./fix.js
    
  3. 检查网站是否需要 WebView 中可能不可用的特定权限


安装问题

全局安装时权限被拒绝

问题描述: npm install -g pake-cli 失败,提示权限错误。

解决方案:

使用以下方法之一:

# 方案 1使用 npx无需安装
npx pake-cli https://example.com

# 方案 2修复 npm 权限
npm config set prefix ~/.npm-global
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
npm install -g pake-cli

# 方案 3使用 pnpm推荐
pnpm install -g pake-cli

获取帮助

如果您的问题未在此处涵盖:

  1. 查看 CLI 使用指南 了解详细参数文档
  2. 参阅 高级用法 了解前置条件和系统设置
  3. 搜索 现有的 GitHub issues
  4. 提交新 issue 时请包含:
    • 您的操作系统和版本
    • Node.js 和 Rust 版本(node --versionrustc --version
    • 完整的错误信息
    • 您使用的构建命令