Разработка
Есть два варианта:
- Просто поставить пакет на роутер или виртуалку и прямо редактировать через SFTP (opkg install openssh-sftp-server)
- SDK, чтобы собирать пакеты
Для сборки пакетов нужен SDK, один из вариантов скачать прям файл и разархивировать https://downloads.openwrt.org/releases/23.05.5/targets/x86/64/ Нужен файл в имени которого есть SDK
wget https://downloads.openwrt.org/releases/23.05.5/targets/x86/64/openwrt-sdk-23.05.5-x86-64_gcc-12.3.0_musl.Linux-x86_64.tar.xz
tar xf openwrt-sdk-23.05.5-x86-64_gcc-12.3.0_musl.Linux-x86_64.tar.xz
mv openwrt-sdk-23.05.5-x86-64_gcc-12.3.0_musl.Linux-x86_64 SDK
Последнее делается для удобства.
Создаём директорию для пакета
mkdir package/utilites
Симлинк из репозитория
ln -s ~/podkop/podkop package/utilites/podkop
ln -s ~/podkop/luci-app-podkop package/luci-app-podkop
В первый раз для сборки luci-app необходимо обновить пакеты
./scripts/feeds update -a
Для make можно добавить флаг -j N, где N - количество ядер для сборки.
При первом make выводится меню, можно просто save, exit и всё. Первый раз долго грузит зависимости.
Сборка пакета. Сами пакеты собираются быстро.
make package/podkop/{clean,compile} V=s
Также для LuCi
make package/luci-app-podkop/{clean,compile} V=s
.ipk находятся в bin/packages/x86_64/base/
Ошибки
Makefile:17: /SDK/feeds/luci/luci.mk: No such file or directory
make[2]: *** No rule to make target '/SDK/feeds/luci/luci.mk'. Stop.
time: package/luci/luci-app-podkop/clean#0.00#0.00#0.00
ERROR: package/luci/luci-app-podkop failed to build.
make[1]: *** [package/Makefile:129: package/luci/luci-app-podkop/clean] Error 1
make[1]: Leaving directory '/SDK'
make: *** [/SDK/include/toplevel.mk:226: package/luci-app-podkop/clean] Error 2
Не загружены пакеты для LuCi
make зависимости
https://openwrt.org/docs/guide-developer/toolchain/install-buildsystem
Ubuntu
sudo apt update
sudo apt install build-essential clang flex bison g++ gawk \
gcc-multilib g++-multilib gettext git libncurses-dev libssl-dev \
python3-distutils rsync unzip zlib1g-dev file wget
Примеры строк
https://github.com/itdoginfo/podkop/blob/main/String-example.md