Build-Probleme reloaded

Moin,

I bim’s, der mit den Kompilierfehlern …

Problem: ffac/site:v2025.1.x kann ich von github.com auschecken und bauen. Mit ffgtso/site-4830-v2025.1 bricht date +%s >build.start ; export GLUON_RELEASE=2.0.1~1 ; export JOBS=1 ; make --output-sync V=s manifest GLUON_TARGETS=x86-64 2>&1 | tee build.log ; date +%s >build.end nach (7,5) Stunden ab:

Applying /home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/tools/libtool/patches/200-openwrt-branding.patch using plaintext: 
patching file build-aux/ltmain.in
patching file build-aux/funclib.sh
CFLAGS="-O2 -I/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/staging_dir/host/include " CPPFLAGS="-I/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/staging_dir/host/include " CXXFLAGS="-O2 -I/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/staging_dir/host/include " LDFLAGS="-L/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/staging_dir/host/lib " make  -C /home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/build_dir/host/libtool-2.4.7/.  uninstall
make[5]: Entering directory '/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/build_dir/host/libtool-2.4.7'
There seems to be no Makefile in this directory.
You must run ./configure before running 'make'.
make[5]: *** [GNUmakefile:108: abort-due-to-no-makefile] Error 1
make[5]: Leaving directory '/home/ffgt/build/site-4830-v2025.1/gluon-build/openwrt/build_dir/host/libtool-2.4.7'

Frische Deb13-VM nur für diesen Zweck. Geändert habe ich zur ffac-Site eigentlich nichts, was dazu führen könnte: domains-Verzeichnis und site.conf aus v2023.2-Repo kopiert, GLUON_MULTIDOMAIN=1 in site.mk gesetzt, sowie in den features mesh-vpn-wireguard rausgenommen und ff-mesh-vpn-tunneldigger zu den packages in image-customization.lua hinzugefügt.

Das build.log hat 72 MB, obiges ist das erste Auftreten von „Error“.

Da ich ein solches Problem ja oft, um nicht zu sagen ständig, habe, dachte ich mir für v2025.1, das wie vorgeschlagen Schritt-für-Schritt mal durchzuspielen:

ffgt@build-v2025-1:~/build/site-4830-v2025.1$ history
    1  mkdir build
    2  cd build/
    3  git clone https://github.com/ffgtso/site-4830-v2025.1.git
    4  ls
    5  cd site-4830-v2025.1/
    6  date +%s >build.start ; export GLUON_RELEASE=2.0.1~1 ; export JOBS=1 ; make --output-sync V=s manifest GLUON_TARGETS=x86-64 2>&1 | tee build.log ; date +%s >build.end

Viel weniger Änderungen kann ich aber nicht vornehmen — aber davon mal ganz ab, was zum Henker haben denn Gluon-Paketlisten mit dem OpenWrt-Buildenvironment auf dem Buildhost zu schaffen?!

Das Build-Environment auf dem Host wird doch von OpenWrt angelegt, bevor auch nur irgendwas von Gluon zu sehen ist?

Ich habe jetzt 2x, auf 2 unterschiedlichen Systemen, das letzte wie gesagt eine Debian-13-V nur für diesen Test, site-4830-v2025.1 ausgecheckt und im Verzeichnis make (s. o.) aufgerufen, jeweils wurde in gluon-build/openwrt/build_dir/host/libtool-2.4.7 kein Makefile gefunden.

ffac/site ausgecheckt, cd site, make manifest … baut in etlichen Stunden die Images für ffac. Sorry, ich raff’s nicht :frowning: Any helpful hint appreciated …

1 „Gefällt mir“

Hi, ich habe mal eben deine Site ausgecheckt und einfach darin:

`make build GLUON_TARGETS=„ramips-mt7621“ GLUON_DEVICES=„zyxel-nwa55axe“` ausgeführt - ich muss ja nicht alle Targets/Devices bauen - das lief bei mir ordentlich durch.

Ich baue bisher weiterhin auf meinem Debian 12 build-server und habe keine Probleme.
Du hast ja aber wohl auch erfolgreich mit Debian 13 die ffac site bauen können - daran wird es also auch eher nicht liegen.

Vielleicht hängt das ganze auch nur bei einem target und nicht allen?
Das “works on my machine” bringt dich ja jetzt nicht mega viel weiter, außer dass die Site grundsätzlich irgendwo baut - ich habe grade auch mal nen x86-64 build gestartet, aber auch da bin ich nach paar Minuten auch schon nach “tools/compile” bei “toolchain/compile” angelangt..

Update: lief auch durch

1 „Gefällt mir“

Danke, interessant. Probiere ich gleich mal aus …

make[4]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/scripts/config'
time: target/linux/prereq#2.14#0.22#2.33
 make[3] tools/install
 make[4] -C tools/libdeflate compile
 make[4] -C tools/flock compile

… und da hängt es irgendwie, 0% CPU :frowning: WTF‽

Nope, no cigar: Hetznerserver geklickt, User added, git clone und …

ffgt@granny:~/build/gluon-4830-v2025.1/site-4830-v2025.1$ export JOBS=100
ffgt@granny:~/build/gluon-4830-v2025.1/site-4830-v2025.1$ make V=s build GLUON_VERSION=2.0.1~1 GLUON_TARGETS="ramips-mt7621" GLUON_DEVICES="zyxel-nwa55axe"
[…]
libtool: warning: remember to run 'libtool --finish /usr/lib/libnl/cli/qdisc'
 /usr/bin/mkdir -p '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/etc/libnl'
 /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/host/bin/install -c -m 644 etc/pktloc etc/classid '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/etc/libnl'
make[7]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0'
make[6]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0'
touch /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/.built
make[5]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/package/libs/libnl'
make[5]: Entering directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/package/libs/libnl'
rm -rf /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl
mkdir -p /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/host /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/packages
install -d -m0755 /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/include/libnl3 /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/pkgconfig
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/include/libnl3/* /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/include/libnl3/
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/* /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/pkgconfig/*.pc /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/pkgconfig
# Copy symlinks
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/libnl-3.so /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/libnl.so
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/libnl-genl-3.so /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/libnl-genl.so
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/libnl-nf-3.so /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/libnl-nf.so
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/libnl-route-3.so /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/libnl-route.so
cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/target-mipsel_24kc_musl/libnl-3.10.0/ipkg-install/usr/lib/libnl-cli-3.so /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/usr/lib/libnl-cli.so
find /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl -name '*.la' | xargs -r rm -f;
if [ -f /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/packages/libnl.list ]; then /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/scripts/clean-package.sh "/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/packages/libnl.list" "/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl"; fi
if [ -d /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl ]; then (cd /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl; find ./ > /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl.files);  SHELL= flock /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/.staging-dir.flock -c ' mv /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl.files /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/packages/libnl.list && cp -fpR /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl/* /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/; '; fi
rm -rf /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/tmp/stage-libnl
touch /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/stamp/.libnl_installed
make[5]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/package/libs/libnl'
time: package/libs/libnl/compile#78.30#11.07#118.81
make[3]: *** [package/Makefile:170: /home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/staging_dir/target-mipsel_24kc_musl/stamp/.package_compile] Error 2
make[2]: *** [/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/include/toplevel.mk:233: world] Error 2
make[1]: *** [Makefile:210: all] Error 2
make: *** [Makefile:147: build] Error 2
ffgt@granny:~/build/gluon-4830-v2025.1/site-4830-v2025.1$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 13 (trixie)
Release:        13
Codename:       trixie

Ich versteh’s nicht. Debian 13, as pure as it can be:

root@granny ~ # history
    1  df -h
    2  apt update
    3  apt install git python3 python3-setuptools build-essential ecdsautils gawk unzip libncurses-dev libz-dev  libssl-dev libelf-dev wget rsync time qemu-utils curl
    4  apt dist-upgrade
    5  useradd -m -c "4830.org Admins" -d /home/ffgt -s /bin/bash -G sudo ffgt
    6  su - ffgt
    7  rsync -av --progress .ssh ~ffgt/
    8  chown -R ffgt:ffgt ~ffgt/.ssh
    9  apt install screen
   10  history
root@granny ~ # su - ffgt
ffgt@granny:~$ history
    1  ls -la
    2  pwd
    3  df -h .
    4  mkdir build
    5  cd 
    6  cd build/
    7  ls
    8  git clone https://github.com/ffgtso/site-4830-v2025.1.git
    9  rm -rf site-4830-v2025.1/
   10  mkdir gluon-4830-v2025.1
   11  cd gluon-4830-v2025.1
   12  git clone https://github.com/ffgtso/site-4830-v2025.1.git
   13  cd site-4830-v2025.1/
   14  more Makefile 
   15  export JOBS=100
   16  cd ..
   17  cd gluon-4830-v2025.1/site-4830-v2025.1/
   18  ls
   19  export JOBS=100
   20  make V=s build GLUON_VERSION=2.0.1~1 GLUON_TARGETS="ramips-mt7621" GLUON_DEVICES="zyxel-nwa55axe"
   21  lsb_release -a
   22  top -S
   23  cd build/
   24  screen -d -R -S build
   25  history

Wie kann das mal tun (bei anderen), mal nicht (zu 100% bei mir)?

Second run:

[…]
 make[5] -C package/network/services/dropbear compile
 make[5] -C package/network/utils/resolveip compile
    ERROR: package/kernel/bpf-headers failed to build.
make -r world: build failed. Please re-run make with -j1 V=s or V=sc for a higher verbosity level to see what's going on
make[2]: *** [/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/include/toplevel.mk:233: world] Error 1
make[1]: *** [Makefile:210: all] Error 2
make: *** [Makefile:147: build] Error 2
ffgt@granny:~/build/gluon-4830-v2025.1/site-4830-v2025.1$

Hallo Wusel,

bitte installiere die Dependencies aus der Doku, dir fehlt mindestens llvm weshalb die BPF header fehlschlagen.

“latest” auf ReadTheDocs war gestern noch nicht auf v2025.1.x als default umgestellt. Habe das gerade gefixt, sollte in den nächsten Minuten entsprechend auch standard sein.

Danke; auf die Idee war ich gestern Nacht auch gekommen und habe die apt-install-Zeile aus dem Dockerfile ausgeführt. (Für’s FFAC-Site-Makefile fehlt auch noch jq.) Mittlerweile scheint’s zu tun (x84-64-Images haben es nach output geschafft), interessantes Fehlerbild …

… und unter Deb11 bricht der Build weiterhin ins Essen :frowning:

ffgt@kaos:~/build/gluon-4830-v2025.1/site-4830-v2025.1$ date +s >build.start ; (make -j100 V=s build GLUON_VERSION=2.0.1~1 GLUON_TARGETS="ramips-mt7621" GLUON_DEVICES="zyxel-nwa50ax") 2>&1 | tee build.log ; date +%s >build.end
[…]
make[5]: Entering directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/host/libtool-2.4.7'
There seems to be no Makefile in this directory.
You must run ./configure before running 'make'.
make[5]: *** [GNUmakefile:108: abort-due-to-no-makefile] Error 1
make[5]: Leaving directory '/home/ffgt/build/gluon-4830-v2025.1/site-4830-v2025.1/gluon-build/openwrt/build_dir/host/libtool-2.4.7'
[…]