CursorTokenLogin/README.md
2026-06-16 16:30:36 +08:00

75 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 多平台编译与打包指南
在 Windows 系统下,由于 PyInstaller 的工作机制是直接打包当前平台的 Python 解析器和系统动态库,**它不支持交叉编译**(即在 Windows 本机无法编译出 macOS 的 `.app` 苹果程序,也无法直接打包 Linux 的 `.deb``.rpm` 安装包)。
为了解决这个问题,并在一台电脑上实现 4 端程序Windows `.exe`、macOS `.app`、Debian/Ubuntu `.deb`、RedHat/Fedora `.rpm`)的统一打包,我们已经在项目中配置了 **GitHub Actions 自动化流水线**
---
## 🚀 推荐方案:使用 GitHub Actions 自动打包 4 端程序
我们已经在项目中创建了自动化打包脚本:[.github/workflows/build.yml](file:///.github/workflows/build.yml)。
您只需将代码托管在 GitHub 仓库中GitHub 就会为您调用免费的 Windows、macOS 和 Linux 虚拟服务器,一键自动构建出所有安装包!
### 操作步骤:
1. **将代码推送到您的 GitHub 仓库**
2. 当需要发布新版本时,在本地打上版本 tag 并推送:
```bash
git tag v1.0.0
git push origin v1.0.0
```
3. GitHub Actions 会自动触发构建任务,并行启动三个环境:
- 💻 **Windows**:编译出 `CursorTokenLogin.exe`
- 🍏 **macOS**:编译出 `CursorTokenLogin-macOS.zip` (内含 `.app` 程序)
- 🐧 **Linux**:编译出 Linux 二进制,并分别打包为 `cursortokenlogin.deb``cursortokenlogin.rpm`
4. 构建完成后GitHub 会自动创建一个 Release 版本,并将这 4 个编译好的安装包上传到 Release 中,您可以直接下载分发!
---
## 🛠️ 本地手动构建说明Windows/Linux/Mac
如果您不想使用 GitHub 托管,也可以在本地不同的系统环境中分别运行打包:
### 1. 编译 Windows 程序 (`.exe`)
在 Windows 命令行中运行:
```bash
python -m PyInstaller build.spec --clean
```
### 2. 编译 macOS 程序 (`.app`)
在 macOS 终端中运行:
```bash
python -m PyInstaller build.spec --clean
```
*(编译生成 `.app` 文件目录,拷贝分发前建议压缩为 `.zip`)*
### 3. 编译 Linux 安装包 (`.deb` / `.rpm`)
在 Ubuntu / Debian 终端下,可以使用以下命令快速打包:
```bash
# 1. 编译 Linux 原生可执行文件
python -m PyInstaller build.spec --clean
# 2. 组织 DEB 包目录结构并打包
mkdir -p deb-package/DEBIAN
mkdir -p deb-package/usr/bin
cp dist/CursorTokenLogin deb-package/usr/bin/cursortokenlogin
chmod +x deb-package/usr/bin/cursortokenlogin
# 创建 control 配置文件
cat <<EOF > deb-package/DEBIAN/control
Package: cursortokenlogin
Version: 1.0.0
Architecture: amd64
Maintainer: Yunzer
Description: Cursor Token Login Helper
EOF
# 生成 deb 安装包
dpkg-deb --build deb-package cursortokenlogin.deb
# 3. 使用 alien 将 deb 包转换为 rpm 包
sudo apt-get install alien
sudo alien --to-rpm --scripts cursortokenlogin.deb
```