docs: Add Persian Build_Linux file (#1152)

* Create Build_Linux_fa.md

The Persian translation of the file Build_Linux.md has been added.

* Update README_fa.md

* change path of file

* Update README_fa.md
This commit is contained in:
AA 2024-01-08 19:18:58 +03:30 committed by GitHub
parent 364ea93cc1
commit 9d8b12ff66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 75 additions and 1 deletions

View File

@ -62,7 +62,7 @@ https://matsuridayo.github.io
## آموزش کامپایل
[Linux](docs/Build_Linux.md)
[Linux](docs/Build_Linux_fa.md)
[Windows](docs/Build_Windows.md)

74
docs/Build_Linux_fa.md Normal file
View File

@ -0,0 +1,74 @@
کامپایل کردن nekoray در لینوکس
## کلون کردن کد با گیت
```
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 | | نسخه‌ی بسته را کامپایل کنید (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++
(ممکن است به اتصال VPN نیاز داشته باشد)
```shell
./libs/build_deps_all.sh
```
#### کامپایل برنامه اصلی
```shell
mkdir build
cd build
cmake -GNinja ..
ninja
```
پس از کامپایل، فایل `nekoray` به دست می‌آید.
### کامپایل بخش Go
لطفاً به [Build_Core.md](./Build_Core.md) مراجعه کنید.