Dies ist eine alte Version des Dokuments!
Die von der Community Pinneberg verwendete Firmware ist Gluon. Siehe:
Es gibt verschiedene Zweige:
Voraussetzungen
aptitude install build-essential git subversion python gawk unzip libssl-dev zlib1g-dev libncurses5-dev
git clone https://github.com/freifunk-gluon/gluon.git cd gluon git clone git://github.com/thooge/ffpi-site.git site cd site git checkout [master|beta|experimental] cd .. git checkout v2015.1.2 make update make -j10 GLUON_TARGET=ar71xx-generic GLUON_BRANCH=[stable|beta|experimental] # Falls die Versin < 2017 ist, muß die Datei modules angepaßt werden: # Das Reporitory muß von openwrt auf chaos_calmer umgestellt werden make update make manifest GLUON_BRANCH=[stable|beta|experimental]
Weitere Targets
mpc85xx-generic - TLWDR4900ar71xx-nand - WNDR4300x86-genericx86-64x86-kvm_guestcd gluon git pull make clean GLUON_TARGET=ar71xx-generic GLUON_BRANCH=[stable|beta|experimental] make update make -j10 GLUON_TARGET=ar71xx-generic GLUON_BRANCH=[stable|beta|experimental]
Alles löschen: make dirclean
Falls der Build mit einer Fehlermeldung abbricht, kann das Kommando um V=s
ergänzt werden. Damit wird eine ausführliche Protokollierung eingeschaltet.
Fehler aufgrund Änderungen in glibc
Fehler bei m4:
cd ./openwrt-ramips/build_dir/host/m4-1.4.17 sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h
Subject: Workaround change in glibc
Temporary workaround to compile with glibc 2.28, which
deprecated some constants
Based on the workaround made for the tools/m4 package
--- a/lib/stdio-impl.h
+++ b/lib/stdio-impl.h
@@ -18,6 +18,12 @@
the same implementation of stdio extension API, except that some fields
have different naming conventions, or their access requires some casts. */
+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
+ problem by defining it ourselves. FIXME: Do not rely on glibc
+ internals. */
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
+# define _IO_IN_BACKUP 0x100
+#endif
/* BSD stdio derived implementations. */
--- a/lib/fseterr.c
+++ b/lib/fseterr.c
@@ -29,7 +29,7 @@
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags |= _IO_ERR_SEEN;
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
fp_->_flags |= __SERR;
Meistens fehlt:
#include <sys/sysmacros.h>
Mögliche betroffene Dateien:
make-ext4fscontents.ce2fsprogs-1.43.3lib/ext2fs/ext2fs.he2fsck/e2fsck.hlib/blkid/blkid.hmtd-utils-1.5.1mkfs.jffs2.cubiutils/libubi.cmkfs.ubifs/mkfs.ubifs.h findutils, fix wie bei bisonfreadahead.cfseeko.csiehe auch: https://forum.openwrt.org/t/solved-error-undefined-reference-to-major/108258
Benötigte Bibliotheken:
make manifest GLUON_BRANCH=[stable|beta|experimental] contrib/sign.sh <private_key> output/images/sysupgrade/[stable|beta|experimental].manifest