mirror of
https://github.com/MatsuriDayo/nekoray.git
synced 2025-12-17 20:44:38 +03:00
update docs
This commit is contained in:
76
docs/Build_Linux.md
Normal file
76
docs/Build_Linux.md
Normal file
@@ -0,0 +1,76 @@
|
||||
在 Linux 下编译 Nekoray
|
||||
|
||||
### git clone 源码
|
||||
|
||||
```
|
||||
git clone https://github.com/MatsuriDayo/nekoray.git --recursive
|
||||
```
|
||||
|
||||
### 简单编译法
|
||||
|
||||
条件:
|
||||
|
||||
1. C++ 依赖:`protobuf yaml-cpp zxing-cpp` 已用包管理器安装,并符合版本要求
|
||||
2. 已安装 `qtbase` `qtsvg` `qttools` `qtx11extras`
|
||||
3. Qt 版本必须大于等于 5.15
|
||||
4. 系统为 `x86-64-linux-gnu`
|
||||
|
||||
```shell
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -GNinja ..
|
||||
ninja
|
||||
```
|
||||
|
||||
编译完成后得到 `nekoray`
|
||||
|
||||
解压 Release 的压缩包,替换其中的 `nekoray`,删除 `launcher` 即可使用。
|
||||
|
||||
### 复杂编译法
|
||||
|
||||
#### CMake 参数
|
||||
|
||||
| CMake 参数 | 默认值 | 含义 |
|
||||
|------------------|-----|-------------------------|
|
||||
| QT_VERSION_MAJOR | 5 | QT版本 |
|
||||
| NKR_NO_EXTERNAL | | 不包含外部C++依赖(以下所有) |
|
||||
| NKR_NO_YAML | | 不包含yaml-cpp |
|
||||
| NKR_NO_QHOTKEY | | 不包含qhotkey |
|
||||
| NKR_NO_ZXING | | 不包含zxing |
|
||||
| NKR_NO_GRPC | | 不包含gRPC |
|
||||
| NKR_NO_QUICKJS | | 不包含quickjs |
|
||||
|
||||
#### C++ 部分
|
||||
|
||||
当您的发行版没有上面几个 C++ 依赖包,或者版本不符合要求时,可以参考 libs 文件夹内的默认编译脚本自行编译。
|
||||
|
||||
依赖搜寻 prefix 为 `libs/deps/bulit`
|
||||
|
||||
条件:
|
||||
|
||||
1. Qt 版本必须大于等于 5.15
|
||||
|
||||
首先编译安装C++依赖(这一步可能要挂梯)
|
||||
|
||||
```shell
|
||||
./libs/build_deps_all.sh
|
||||
```
|
||||
|
||||
然后编译本体
|
||||
|
||||
```shell
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -GNinja ..
|
||||
ninja
|
||||
```
|
||||
|
||||
编译完成后得到 `nekoray`
|
||||
|
||||
#### Go 部分
|
||||
|
||||
1. 把 `Matsuridayo/Matsuri` `Matsuridayo/v2ray-core` 置于 `../`
|
||||
2. 进入 `go/cmd/nekoray_core` 文件夹 `go build` 得到 `nekoray_core`。
|
||||
3. 进入 `go/cmd/nekobox_core` 文件夹 `go build` 得到 `nekobox_core`。
|
||||
|
||||
非官方构建无需编译 `updater` `launcher`
|
||||
Reference in New Issue
Block a user