60 lines
1.8 KiB
Markdown
60 lines
1.8 KiB
Markdown
---
|
||
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 .
|
||
```
|