CI / changes (push) Successful in 6s
CI / openapi (push) Has been skipped
CI / go (push) Has been skipped
CI / docker-web (push) Has been skipped
CI / docker-bird (push) Successful in 40s
CI / bird2 (push) Successful in 14s
CI / docker-go (push) Successful in 2m50s
Modified the bird build script to enable readline support and updated the Dockerfile to install both libreadline8 and libncurses6, ensuring compatibility with the birdc runtime requirements.
32 lines
1008 B
Bash
32 lines
1008 B
Bash
#!/bin/sh
|
|
# Сборка BIRD из официального tarball (версия задаётся BIRD_VERSION, по умолчанию 2.14).
|
|
# Запуск от root (Docker) или через sudo на хосте. Префикс установки: /usr/local.
|
|
# birdc требует ncurses + readline; в runtime-образе gobinary — libncurses6 + libreadline8.
|
|
set -eu
|
|
BIRD_VERSION="${BIRD_VERSION:-2.14}"
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
|
|
apt-get update
|
|
apt-get install -y --no-install-recommends \
|
|
build-essential \
|
|
ca-certificates \
|
|
curl \
|
|
flex \
|
|
bison \
|
|
libncurses-dev \
|
|
libreadline-dev
|
|
|
|
cd /tmp
|
|
rm -rf "bird-${BIRD_VERSION}"
|
|
curl -fsSL "https://bird.network.cz/download/bird-${BIRD_VERSION}.tar.gz" | tar xz
|
|
cd "bird-${BIRD_VERSION}"
|
|
./configure --prefix=/usr/local --enable-client
|
|
make -j"$(nproc)"
|
|
make install
|
|
cd /
|
|
rm -rf "/tmp/bird-${BIRD_VERSION}"
|
|
|
|
apt-get purge -y build-essential flex bison libncurses-dev libreadline-dev
|
|
apt-get autoremove -y
|
|
rm -rf /var/lib/apt/lists/*
|