-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* 添加了桌面端构建文档 * style: 一大坨 <br>, 不喜欢 --------- Co-authored-by: sjfhsjfh <[email protected]>
- Loading branch information
Showing
11 changed files
with
152 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# Linux | ||
|
||
## 准备阶段 | ||
|
||
1. 确保系统安装了 cargo,可以在终端使用 `cargo -V` 检查系统是否安装了 cargo,如果没有安装,请点击 [这里](./cargo.md)按步骤安装构建工具 | ||
2. 从 GitHub 下载源码到本地: | ||
- 若您是纯终端,建议使用 git 工具,请使用 `git clone https://github.com/TeamFlos/phira.git` 将仓库克隆到本地。 | ||
- 若您使用了桌面环境,您也可以在 Phira 仓库页面点击 Code 按钮选择 `Download ZIP` 将代码下载到本地,随后将代码解压到本地任意目录。 | ||
- __如果您无法连接到 GitHub,您也可以使用 git 加速网站提供的加速地址克隆与下载。__ | ||
- __若您要构建指定版本的 Phira,请前往 release 页面在 Assets 中选择下载 `Source code(tar.gz)` 到本地,解压到任意路径即可。__ | ||
- __警告:为了防止玄学问题,我们不建议路径中包含除了 ASCII 编码包含字符以外的任何字符。__ | ||
3. 静态库文件,您可以 [直接下载](./prpr-avc.zip) 或者在 [缓存站](https://www.nuanr-mxi.com/prpr-avc.zip) 下载静态库文件,下载完成后直接解压到代码根目录下,如果提示覆盖文件,请点击覆盖。 | ||
4. 构建过程需要库文件补充,输入以下命令即可: | ||
|
||
> sudo apt update | ||
> | ||
> sudo apt install libasound2-dev | ||
> | ||
> sudo apt install libgtk-3-dev | ||
## 开始构建 | ||
|
||
1. 打开终端,切换到代码根目录 | ||
2. 输入 `cargo build -r --bin phira-main` ,直到编译完成。 | ||
3. 复制 `.\assets\` 目录中的所有文件到 `.\target\release\assets\` ,至此,构建流程全部完成,您可以在带有桌面环境的情况下直接运行 `phira-main` 检查资源文件是否完整,若您没有桌面环境,程序将会闪退(实测 WSL 无法兼容,如果在 WSL 下运行将会闪退),至此,构建流程结束。 | ||
|
||
- __注意:在此文档编写时,代码目录下的资源文件并不完整,如果您发现主程序闪退,您可以前往 release 页面下载任意版本,获取资源文件__ | ||
|
||
## 常见问题 | ||
|
||
Q. 构建输出 `failed to connect to GitHub` | ||
|
||
A. 请检查网络环境。 | ||
|
||
Q. 构建时报错 `The pkg-config command could not be found` | ||
|
||
A. 缺失 `pkg-config` 指令,使用 `sudo apt install pkg-config -y` 安装即可。 | ||
|
||
Q. 构建报错 `failed to run custom build command for alsa-sys v0.3.1` | ||
|
||
A. 缺失库文件 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# 构建指南 | ||
~~什么,移动设备?,我不会,长大后再学习~~<br> | ||
Windows:[here](./Windows.md)<br> | ||
Linux:[here](./Linux.md)<br> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# Windows | ||
|
||
## 准备阶段 | ||
|
||
1. 确保系统安装了 cargo,可以在命令提示符(cmd)或者 PowerShell 使用 `cargo -V` 检查系统是否安装了 cargo。如果提示以下信息: | ||
- `'cargo' 不是内部或外部命令,也不是可运行的程序或批处理文件。` | ||
- `cargo : 无法将“cargo”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。` | ||
- 请点击 [这里](./cargo.md) 按步骤安装构建工具 | ||
2. 从 GitHub 下载源码到本地: | ||
- 若您安装了 git 工具,请使用 `git clone https://github.com/TeamFlos/phira.git` 将仓库克隆到本地。 | ||
- 若您没有安装 git 工具,您也可以在 Phira 仓库页面点击 Code 按钮选择 `Download ZIP` 将代码下载到本地,随后将代码解压到本地任意目录。 | ||
- __如果您无法连接到 GitHub,您也可以使用 git 加速网站提供的加速地址克隆与下载。__ | ||
- __若您要构建指定版本的 Phira,请前往 release 页面在 Assets 中选择下载 `Source code(zip)` 到本地,解压到任意路径即可。__ | ||
- __警告:为了防止玄学问题,我们不建议路径中包含除了 ASCII 编码包含字符以外的任何字符。__ | ||
3. perl,您可以在命令提示符(cmd)或者 PowerShell 使用 `perl -v` 检查系统是否安装了 perl,如果没有,请搜索并打开 `MSYS2 UCRT64` 输入 `pacman -S perl` 安装 perl | ||
4. 静态库文件,您可以 [直接下载](./prpr-avc.zip) 或者在 [缓存站](https://www.nuanr-mxi.com/prpr-avc.zip) 下载静态库文件,下载完成后直接解压到代码根目录下,如果提示覆盖文件,请点击覆盖。 | ||
|
||
## 开始构建 | ||
|
||
1. 在命令提示符(cmd)或者 PowerShell 切换到代码根目录(如 `D:\phira\` ) | ||
2. 在命令提示符(cmd)或者 PowerShell 使用 `cargo build -r --bin phira-main` ,如果不出意外,在 `openssl-sys(build)` 时,您将卡很久很久,请不要退出,这是正常的。 | ||
3. 构建完成后,在 `.\target\release\` 目录下您可以找到编译完成的主程序 | ||
4. 复制 `.\assets\` 目录中的所有文件到 `.\target\release\assets\` ,至此,构建流程全部完成,您可以直接运行 `phira-main.exe` 检查资源文件是否完整。 | ||
|
||
- __注意:在此文档编写时,代码目录下的资源文件并不完整,如果您发现主程序闪退,您可以前往 release 页面下载任意版本,获取资源文件__ | ||
|
||
## 常见问题 | ||
|
||
Q. 报错 `failed to send request: 操作超时` | ||
|
||
A. 请检查网络环境,确保您可以正常访问 GitHub | ||
|
||
Q. 报错 `failed to send request: 无法解析服务器的名称或地址` | ||
|
||
A. 检查 DNS 或更换 DNS,更换后请刷新 DNS 缓存 | ||
|
||
Q. 构建过程中报错 `error: failed to run custom build command for openssl-sys v0.9.99` | ||
|
||
A. 缺失 perl,请检查是否正确安装 perl 后再试 | ||
|
||
Q. 构建报错`error occurred: Failed to find tool. Is gcc.exe installed? (see https://github.com/rust-lang/cc-rs#compile-time-requirements for help)` | ||
|
||
A. 请检查是否安装了 `MSYS2` 以及检查是否配置了环境变量 | ||
|
||
Q. 出现以下报错: | ||
|
||
> Error building OpenSSL dependencies: | ||
> | ||
> Command: "make" "depend" | ||
> | ||
> Failed to execute: program not found | ||
A. 缺失 `make` 指令,请前往 MSYS2 终端中使用 `pacman -S make` 安装此命令。 | ||
|
||
Q. 报错包含 `This perl inplementation doesn't produce lnix like paths` | ||
|
||
A. 使用的 perl 不适用于 gcc,请删除原有 perl 的环境变量或者直接卸载原有的 perl。 | ||
|
||
Q. 太麻烦了 | ||
|
||
A. 这样,直接去 release 页面下吧~~微软我真谢谢你~~ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# Cargo 安装 | ||
|
||
## Windows | ||
|
||
1. 点击 [这里](https://win.rustup.rs/) 下载构建工具安装程序。 | ||
2. 双击打开 `rustup-init.exe` 后出现安装窗口;输入`2` 然后输入 `y` 然后再次输入 `2` ,然后输入 `x86_64-pc-windows-gnu` ,最后一路回车开始安装,直到输出 `Rust is installed now. Great!` | ||
- __注意:千万不要直接回车安装 MSVC,这在后续构建将会出现大量问题!__ | ||
|
||
3. 前往 [MSYS2](https://www.msys2.org/) 官网下载 MSYS2 安装程序,下载完成后双击打开,如无特殊需求,一路下一步即可,直到提示 `Finished the MSYS2 Setup`,点击右下角的按钮后将弹出一个窗口,输入以下指令,安装过程一路回车即可。 | ||
>pacman -Sy && pacman -Syu | ||
> | ||
>pacman -S mingw-w64-x86_64-toolchain | ||
- 如果您无法连接到 github,您也可以去 [缓存站](https://www.nuanr-mxi.com/msys.exe) 下载 MSYS2, __注意,缓存站只能保证您可以下载,不能高速下载,也不一定是最新版。__ | ||
4. 打开命令提示符(cmd)或 PowerShell,输入 `cargo -V` 检查是否成功安装,若返回版本号则安装成功,若出现其他提示,请见 Windows 常见问题。 | ||
5. 按下图所示,修改环境变量 | ||
![sys_path_I](./sys_path_I.png) ![sys_path_II](./sys_path_II.png) ![sys_path_III](./sys_path_III.png) ![sys_path_IV](./sys_path_IV.png) ![sys_path_V](./sys_path_V.png) | ||
6. 打开命令提示符(cmd)或 PowerShell,输入 `gcc -v` 检查是否成功安装,若返回版本号则安装成功,若出现其他提示,请见 Windows 常见问题。 | ||
|
||
### Windows 常见问题 | ||
|
||
Q. 双击运行下载成功后的构建工具闪退 | ||
|
||
A. 请不要更改文件名 | ||
|
||
## Linux | ||
|
||
### Debian 分支 Linux 系统 | ||
|
||
1. 打开终端,输入以下命令: | ||
>sudo aot update | ||
> | ||
>sudo apt install cargo -y | ||
2. 若无报错,输入 `cargo -V` 检查是否输出版本号,若出现其他输出,请见 Linux 常见问题 | ||
|
||
其他系统待补充 | ||
|
||
### Linux 常见问题 | ||
|
||
Q. 输入 `cargo` 时输出 `bash: /usr/bin/cargo: No such file or directory` 或 `cargo: command not found` | ||
|
||
A. 未成功安装 cargo,请检查安装完成后是否输出了其他信息。 |
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.