mirror of
https://github.com/MatsuriDayo/nekoray.git
synced 2025-12-17 20:44:38 +03:00
64 lines
1.6 KiB
Markdown
64 lines
1.6 KiB
Markdown
在 macOS 下编译 Nekoray
|
||
|
||
## git clone 源码
|
||
|
||
```
|
||
git clone https://github.com/MatsuriDayo/nekoray.git --recursive
|
||
```
|
||
|
||
## 先决条件
|
||
1. 安装 `CMake` `Ninja` `npm`
|
||
2. 安装 Qt `5.15.x` 编译环境,并设置好有关环境变量,以免 CMake 找不到 Qt。 (`qtbase` `qtsvg` `qttools`)
|
||
3. 安装 `appdmg` (`sudo npm install -g appdmg`)
|
||
|
||
## CMake 参数
|
||
|
||
同 Build_Linux
|
||
|
||
## C++ 部分
|
||
|
||
### 编译安装 C/C++ 依赖
|
||
|
||
(这一步可能要挂梯)
|
||
|
||
```shell
|
||
./libs/build_deps_all.sh
|
||
```
|
||
|
||
### 编译本体
|
||
|
||
```shell
|
||
mkdir build
|
||
cd build
|
||
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DNKR_PACKAGE_MACOS=1 ..
|
||
ninja
|
||
```
|
||
|
||
## Go 部分
|
||
|
||
同 Build_Linux
|
||
|
||
## 打包
|
||
|
||
如有疑问,请参考[这个脚本](https://github.com/MatsuriDayo/nekoray/blob/main/libs/deploy_macos.sh)
|
||
|
||
### 准备core
|
||
|
||
将 编译得到的 `nekoray_core` `nekobox_core` 放入 `build/nekoray.app/Contents/MacOS`
|
||
|
||
### 准备geo文件(可选)
|
||
|
||
```shell
|
||
curl -Lso build/nekoray.app/Contents/MacOS/geoip.dat "https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat"
|
||
curl -Lso build/nekoray.app/Contents/MacOS/geosite.dat "https://github.com/v2fly/domain-list-community/releases/latest/download/dlc.dat"
|
||
curl -Lso build/nekoray.app/Contents/MacOS/geoip.db "https://github.com/SagerNet/sing-geoip/releases/latest/download/geoip.db"
|
||
curl -Lso build/nekoray.app/Contents/MacOS/geosite.db "https://github.com/SagerNet/sing-geosite/releases/latest/download/geosite.db"
|
||
```
|
||
|
||
如果打包时没有包含geo文件,可在应用内设置 `v2ray资源路径` 代替。
|
||
|
||
### 在nekoray目录下打包
|
||
```shell
|
||
appdmg appdmg.json /path/to/nekoray.dmg
|
||
```
|