Guten Morgen!
Also, ich habe gestern Abend und diese Nacht nochmals alles durchlaufen lassen:
Code:
1. ds-0.2.9-opensrc-04.06.tar.bz2
2. ds-0.2.9-p2.patch.bz2
3. ds-0.2.9-b.sander-updates.patch.bz2
Alles entpackt, die Patches nachgeführt, konfiguriert (mit verbosity=2) und mit "make precompiled" gestartet.
Dies sind alle Zeilen, die in der .config nicht auskommentiert, also aktiv, sind:
Code:
DS_HAVE_DOT_CONFIG=y
DS_AVM_VERSION_04_06=y
DS_AVM_VERSION_STRING="04.06"
DS_TYPE_FON_WLAN_7050=y
DS_TYPE_LANG_DE=y
DS_TYPE_LANG_STRING="de"
DS_TYPE_STRING="fon_wlan_7050"
DS_INSTALL_BASE=y
DS_REPLACE_BUSYBOX=y
DS_REPLACE_KERNEL=y
DS_TARGET_REF="4mb"
DS_KERNEL_REF="4mb"
DS_HIDDEN_ROOT=y
DS_CONTIGUOUS_HIDDEN_ROOT=y
DS_SQUASHFS_LZMA=y
DS_ROOTFS_VARTAR=y
DS_KERNEL_MTD_SIZE=11
DS_FILESYSTEM_MTD_SIZE=48
DS_HAS_PHONE=y
DS_HAS_WLAN=y
DS_HAS_USB=y
DS_BRANDING_1und1=y
DS_BRANDING_avm=y
DS_BRANDING_arcor=y
DS_REMOVE_HELP=y
DS_REMOVE_ASSISTANT=y
DS_PATCH_ENUM=y
DS_PATCH_INTERNATIONAL=y
DS_LANG_DE=y
DS_LANG_STRING="de"
DS_PACKAGE_CALLMONITOR=y
DS_PACKAGE_DNSMASQ=y
DS_PACKAGE_DROPBEAR=y
DS_PACKAGE_MC=y
DS_PACKAGE_OPENVPN=y
DS_PACKAGE_SCREEN=y
DS_PACKAGE_VPNC=y
DS_PACKAGE_TRANSMISSION=y
DS_PACKAGE_FIREWALL_CGI=y
DS_DL_OVERRIDE=y
DS_DL_SITE="ftp://ftp.avm.de/fritz.box/fritzbox.fon_wlan_7050/firmware"
DS_DL_SOURCE="fritz.box_fon_wlan_7050.14.04.15.image"
DS_VERBOSITY_LEVEL=2
DS_FAVICON_NONE=y
DS_FAVICON_STRING="none"
DS_SQUASHFS_BLOCKSIZE_65536=y
DS_MODULE_ip_conntrack_ftp=y
DS_MODULE_ip_conntrack=y
DS_MODULE_iptable_filter=y
DS_MODULE_ip_tables=y
DS_MODULE_ipt_iprange=y
DS_MODULE_ipt_LOG=y
DS_MODULE_ipt_mac=y
DS_MODULE_ipt_multiport=y
DS_MODULE_ipt_state=y
DS_LIB_ld_uClibc=y
DS_LIB_libcrypt=y
DS_LIB_libdl=y
DS_LIB_libnsl=y
DS_LIB_libpthread=y
DS_LIB_libuClibc=y
DS_LIB_libutil=y
DS_LIB_libipt_iprange=y
DS_LIB_libipt_LOG=y
DS_LIB_libipt_mac=y
DS_LIB_libipt_multiport=y
DS_LIB_libipt_standard=y
DS_LIB_libipt_state=y
DS_LIB_libipt_tcp=y
DS_LIB_libipt_udp=y
DS_LIB_libncurses=y
DS_LIB_libcrypto=y
DS_LIB_libssl=y
DS_TARGET_CROSS="mipsel-linux-uclibc-"
DS_TARGET_MAKE_PATH="toolchain/target/bin"
DS_TARGET_CFLAGS="-Os -W -Wall -pipe -march=4kc -Wa,--trap"
DS_KERNEL_CROSS="mipsel-unknown-linux-gnu-"
DS_KERNEL_MAKE_PATH="toolchain/kernel/bin"
DS_TARGET_COMPILER_GCC_4_1_0_UCLIBC_0_9_26=y
DS_TARGET_GCC_VERSION="4.1.0"
DS_TARGET_UCLIBC_VERSION="0.9.26"
DS_TARGET_BINUTILS_VERSION="2.16.91.0.6"
DS_TARGET_UCLIBC_CONFIG_MOD=y
DS_TARGET_UCLIBC_REF="mod"
DS_TARGET_GXX=y
DS_TARGET_CCACHE=y
DS_KERNEL_COMPILER_GCC_3_3_2_GLIBC_2_3_2=y
DS_KERNEL_GCC_VERSION="3.3.2"
DS_KERNEL_GLIBC_VERSION="2.3.2"
Zunächst gab es eine Fehlermeldung für source/toolchain/gcc-4.1.0/gcc/Makefile.in.rej, die aber effektiv nur eine Zeile Code betraf, nämlich IMHO die Erkennung, ob die Kernel-Header gefunden wurden. Da das Kompilieren fast komplett durchlief, gehe ich davon aus, dass der Patch für mich keine Auswirkungen hat:
Code:
***************
*** 3167,3179 ****
../$(build_subdir)/fixincludes/fixincl: ; @ :
# Build fixed copies of system files.
stmp-fixinc: gsyslimits.h macro_list \
$(build_objdir)/fixincludes/fixincl \
$(build_objdir)/fixincludes/fixinc.sh
@if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \
echo The directory that should contain system headers does not exist: >&2 ; \
echo " ${SYSTEM_HEADER_DIR}" >&2 ; \
- if test "x${SYSTEM_HEADER_DIR}" = "x${gcc_tooldir}/sys-include"; \
then sleep 1; else exit 1; fi; \
fi
rm -rf include; mkdir include
--- 3170,3184 ----
../$(build_subdir)/fixincludes/fixincl: ; @ :
# Build fixed copies of system files.
+ # Abort if no system headers available, unless building a crosscompiler.
+ # Canonicalize $gcc_tooldir/sys-include in same way as $SYSTEM_HEADER_DIR was canonicalized so test still works
stmp-fixinc: gsyslimits.h macro_list \
$(build_objdir)/fixincludes/fixincl \
$(build_objdir)/fixincludes/fixinc.sh
@if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \
echo The directory that should contain system headers does not exist: >&2 ; \
echo " ${SYSTEM_HEADER_DIR}" >&2 ; \
+ if test "x${SYSTEM_HEADER_DIR}" = "x`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`"; \
then sleep 1; else exit 1; fi; \
fi
rm -rf include; mkdir include
Dann brach mir der Kompile-Vorgang ab, weil ein Tool fehlte (jam).
@Danisahne: Ein configure wäre schön, der vorab testet, ob alle benötigten Tools/Libraries vorhanden sind ...
Ok, irgendwann meldete dann der Rechner, dass das "make precompiled" nun fertig sei:
Code:
Die Target-Datei »vpnc-precompiled« wurde erfolgreich aktualisiert.
Fertig mit den Voraussetzungen für die Ziel-Datei »precompiled«.
Das Target »precompiled« muss neu erzeugt werden.
Die Target-Datei »precompiled« wurde erfolgreich aktualisiert.
Nun also den reinen "make" angeworfen führt zu folgendem Resultat:
Code:
STEP 1: UNPACK
unpacking firmware image
splitting kernel image
unpacking filesystem image
created 1290 files
created 82 directories
created 169 symlinks
created 0 devices
created 0 fifos
unpacking var.tar
done.
STEP 2: MODIFY
applying patches
applying patches (fon_wlan_7050-de)
patching file etc/profile
patching file usr/bin/system_status
patching file etc/init.d/rc.net
patching file etc/init.d/rc.voip
patching file etc/init.d/rc.S
patching file etc/init.d/rc.S
patching file etc/init.d/rc.S
patching file usr/www/all/html/de/menus/menu2_fon.html
patching file usr/www/all/html/de/menus/menu2_homehome.html
patching file usr/www/all/html/de/menus/menu2.inc
Hunk #1 FAILED at 15.
1 out of 1 hunk FAILED -- saving rejects to file usr/www/all/html/de/menus/menu2.inc.rej
patching file usr/www/all/html/de/menus/menu2_internet.html
patching file usr/www/all/html/de/menus/menu2_system.html
patching file usr/www/all/html/de/menus/menu2_wlan.html
make: *** [firmware] Fehler 2
Und die build/modified/filesystem/usr/www/all/html/de/menus/menu2.inc.rej meint dies:
Code:
***************
*** 15,17 ****
<? setvariable var:evtxt05 "USB-Zubehör" ?>
<? setvariable var:evtxt06 "Netzwerkgeräte" ?>
<? setvariable var:evtxt07 "Einstellungen" ?>
--- 15,18 ----
<? setvariable var:evtxt05 "USB-Zubehör" ?>
<? setvariable var:evtxt06 "Netzwerkgeräte" ?>
<? setvariable var:evtxt07 "Einstellungen" ?>
+ <? setvariable var:menuDSMOD "DS-MOD" ?>
Bricht das target "firmware" nun also wegen dieses misslungenen Patches ab oder ist da noch was anderes im Busch? Kann/darf ich den Patch einfach von Hand in die Datei schreiben oder hat da das make-Script was gegen? Nutzt das überhaupt was?
Ahoi,
ChrisDi