nekoray/docs/Build_Linux_ru.md
2024-06-02 00:22:13 +10:00

79 lines
3.4 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.

Компиляция Nekoray для Linux
## Клонируем репозиторий
```
git clone https://github.com/MatsuriDayo/nekoray.git --recursive
```
## Простой метод компиляции
Зависимости:
1. Должны быть установлены зависимости C++ `protobuf yaml-cpp zxing-cpp` поддерживаемой версии
2. Должны быть установлены `qtbase` `qtsvg` `qttools` `qtx11extras`
3. Должен быть установлен Qt версии `5.12.x` или `5.15.x`
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/C++ 依赖 (以下所有) |
| NKR_NO_YAML | | 不包含 yaml-cpp |
| NKR_NO_QHOTKEY | | 不包含 qhotkey |
| NKR_NO_ZXING | | 不包含 zxing |
| NKR_NO_GRPC | | 不包含 gRPC |
| NKR_NO_QUICKJS | | 不包含 quickjs |
| NKR_PACKAGE | | 编译 package 版本 (aur)|
| NKR_PACKAGE_MACOS | | 编译 macos 版本 |
| NKR_LIBS | ./libs/deps/built | 依赖搜索目录 |
| NKR_DISABLE_LIBS | | 禁用 NKR_LIBS |
1. `NKR_LIBS` будет добавлен к `CMAKE_PREFIX_PATH`
2. Если включена опция `NKR_PACKAGE`, то по умолчанию значение `NKR_LIBS` равно `. /libs/deps/package`,зависимости доступны в `build_deps_all.sh`
3. Если включена опция`NKR_PACKAGE_MACOS` или `NKR_PACKAGE`,приложение будет использовать каталог appdata для хранения конфигурации, а автоматическое обновление будет отключено
### Зависимости C++
Если в дистрибутиве нет нужных зависимостей C++ или версия не поддерживается, можете запустить скрипт `build_deps_all.sh` для самостоятельной сборки зависимостей.
Требования: установлен Qt `5.12.x` или `5.15.x`.
#### Сборка и установка зависимостей C/C++
(этот шаг нужен для установки зависимостей)
```shell
./libs/build_deps_all.sh
```
#### Компиляция основного кода
```shell
mkdir build
cd build
cmake -GNinja ..
ninja
```
Результатом компиляции будет исполняемый файл `nekoray`
### Компиляция Go кода
Читайте [Build_Core_ru.md](./Build_Core_ru.md)