Миграция на zensical, актуализация под iptvc после рефакторинга
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
---
|
||||
title: Компиляция
|
||||
icon: material/cog
|
||||
tags: ["iptvc", "сборка"]
|
||||
---
|
||||
|
||||
# Компиляция из исходного кода
|
||||
|
||||
Для компиляции потребуется [Go](https://go.dev/dl/) 1.23.6 и выше.
|
||||
|
||||
```bash
|
||||
git clone https://git.axenov.dev/IPTV/iptvc.git
|
||||
cd iptvc
|
||||
make linux
|
||||
# или make help для получения справки по рецептам
|
||||
```
|
||||
|
||||
## Доступные рецепты Makefile
|
||||
|
||||
| Команда | Назначение |
|
||||
| --- | --- |
|
||||
| `make linux` | Сборка под Linux (amd64 по умолчанию) |
|
||||
| `make win` | Сборка под Windows |
|
||||
| `make darwin` | Сборка под macOS |
|
||||
| `make release` | Сборка под все платформы (linux/windows/darwin × amd64/arm64) |
|
||||
| `make clean` | Удаление скомпилированных бинарников |
|
||||
| `make help` | Вывод списка доступных рецептов |
|
||||
|
||||
## Управление архитектурой
|
||||
|
||||
Архитектура целевой платформы задаётся переменной `GOARCH`:
|
||||
|
||||
```bash
|
||||
make darwin GOARCH=arm64 # macOS на Apple Silicon
|
||||
make linux GOARCH=arm64 # Linux ARM (Raspberry Pi и т.п.)
|
||||
```
|
||||
|
||||
## Результат
|
||||
|
||||
Скомпилированные бинарники и ZIP-архивы помещаются в директорию `bin/`:
|
||||
|
||||
```
|
||||
bin/
|
||||
├── linux_amd64/iptvc # или linux_arm64/
|
||||
├── linux_amd64.zip
|
||||
├── windows_amd64/iptvc.exe # или windows_arm64/
|
||||
├── windows_amd64.zip
|
||||
├── darwin_amd64/iptvc # или darwin_arm64/
|
||||
└── darwin_amd64.zip
|
||||
```
|
||||
|
||||
## Сборка без Make
|
||||
|
||||
Можно скомпилировать напрямую через `go build`:
|
||||
|
||||
```bash
|
||||
go build -o iptvc .
|
||||
go build -trimpath -ldflags="-s -w" -o iptvc .
|
||||
```
|
||||
Reference in New Issue
Block a user