- Mitglied seit
- 7 Nov 2006
- Beiträge
- 2,927
- Punkte für Reaktionen
- 3
- Punkte
- 36
Hallo an alle, die Ihr noch auf Firmwares mit Kernel 2.4 angewiesen seid und vor dem Problem steht, daß Ihr zwar Firmware-Images bauen könnt, die Fritz!Box sie aber nicht annimmt:
Das liegt oft daran, daß die Firmware mit einer aktuellen Tar-Version (1.16.x) gebaut wurde, die trotz der Option --format=oldgnu Images baut, die mit dem Tar auf den Boxen inkompatibel sind und deswegen nicht entpackt werden können. Kein Entpacken, kein Flashen. :noidea:
Abhilfe schafft eine ältere Tar-Version wie 1.15.1, deren oldgnu-Option noch kompatibel ist mit der Fritz!Box. Diese wird unter tools/tar im Mod-Verzeichnis gebaut und vom Skript anstelle des im System standardmäßig installierten Tar vom Skript fwmod verwendet. So ist es zumindest beim DS-Mod_26. Um dieses Verhalten auch im alten Mod zu erreichen, habe ich diesen Patch für Euch erstellt (ungetestet, bitte Feedback).
Installation: Voraussetzung ist ds-0.2.9 mit Patch 2, zumindest habe ich dort eingebaut. Erst mal den Patch ins Mod-Verzeichnis kopieren und per cd dorthin wechseln. Dann:
Viel Erfolg beim Modden!
Update 1 (09.04.2007, 18:45): Ich habe einen Cygwin-Patch für tar-1.15.1 eingebaut sowie eine Fallunterscheidung in tar.mk, abgeschaut von fwmod: Wenn die Umgebungsvariable TERM den Wert cygwin hat, wird der zusätzliche Patch angewandt vor configure und make. Mangels Cygwin-Umgebung ist es nicht getestet, daher ist Feedback willkommen. Bin gespannt, ob sich Tar damit übersetzen läßt.
Update 2 (10.04.2007, 03:45): Jetzt habe ich doch mal Cygwin installiert und den Tar-Build samt Firmware-Bauens getestet, dabei eine Kleinigkeit gefixt (Dateiendung .exe unter Windows).
Update 3 (26.04.2007, 15:28): Mea maxima culpa: Ein von mir aus der 2.6er Linie übernommenes Detail in fwmod gehörte dort nicht hin, weil es im alten Mod noch kein Makedevs-Skript gibt. Das war mir entfallen. Es führt dazu, daß die geflashte Box nicht zu Ende bootet, weil sie den Mountpoint /dev nicht findet. Wer das manuell beheben möchte nach bereits eingespieltem Patch, suche bitte in der Datei fwmod nach --exclude=dev und nehme es raus, lasse den Rest der Zeile aber intakt (das Patch-Archiv wurde entsprechend aktualisiert):
Es trat ein nicht näher spezifizierter Fehler während des Updates auf.
Das liegt oft daran, daß die Firmware mit einer aktuellen Tar-Version (1.16.x) gebaut wurde, die trotz der Option --format=oldgnu Images baut, die mit dem Tar auf den Boxen inkompatibel sind und deswegen nicht entpackt werden können. Kein Entpacken, kein Flashen. :noidea:
Abhilfe schafft eine ältere Tar-Version wie 1.15.1, deren oldgnu-Option noch kompatibel ist mit der Fritz!Box. Diese wird unter tools/tar im Mod-Verzeichnis gebaut und vom Skript anstelle des im System standardmäßig installierten Tar vom Skript fwmod verwendet. So ist es zumindest beim DS-Mod_26. Um dieses Verhalten auch im alten Mod zu erreichen, habe ich diesen Patch für Euch erstellt (ungetestet, bitte Feedback).
Installation: Voraussetzung ist ds-0.2.9 mit Patch 2, zumindest habe ich dort eingebaut. Erst mal den Patch ins Mod-Verzeichnis kopieren und per cd dorthin wechseln. Dann:
Code:
cat tar_old_compatibility.patch.bz2 | bunzip2 | patch -p0
Viel Erfolg beim Modden!
Update 1 (09.04.2007, 18:45): Ich habe einen Cygwin-Patch für tar-1.15.1 eingebaut sowie eine Fallunterscheidung in tar.mk, abgeschaut von fwmod: Wenn die Umgebungsvariable TERM den Wert cygwin hat, wird der zusätzliche Patch angewandt vor configure und make. Mangels Cygwin-Umgebung ist es nicht getestet, daher ist Feedback willkommen. Bin gespannt, ob sich Tar damit übersetzen läßt.
Update 2 (10.04.2007, 03:45): Jetzt habe ich doch mal Cygwin installiert und den Tar-Build samt Firmware-Bauens getestet, dabei eine Kleinigkeit gefixt (Dateiendung .exe unter Windows).
Update 3 (26.04.2007, 15:28): Mea maxima culpa: Ein von mir aus der 2.6er Linie übernommenes Detail in fwmod gehörte dort nicht hin, weil es im alten Mod noch kein Makedevs-Skript gibt. Das war mir entfallen. Es führt dazu, daß die geflashte Box nicht zu Ende bootet, weil sie den Mountpoint /dev nicht findet. Wer das manuell beheben möchte nach bereits eingespieltem Patch, suche bitte in der Datei fwmod nach --exclude=dev und nehme es raus, lasse den Rest der Zeile aber intakt (das Patch-Archiv wurde entsprechend aktualisiert):
Code:
# Vorher
"$TAR" -cf - -C "$ORG_DIR"[COLOR="Red"] --exclude=dev[/COLOR] . |
# Nachher
"$TAR" -cf - -C "$ORG_DIR" . |
Anhänge
Zuletzt bearbeitet: