Patch zum Aktualisieren von Enriks Buildroot

hehol

Mitglied
Mitglied seit
22 Feb 2005
Beiträge
458
Punkte für Reaktionen
0
Punkte
16
Hallo,

ich habe einen Patch zusammengestellt, mit dem sich Enrik's Buildroot mit dem aktuell von AVM erhältlichen Quellcode compilieren läßt. Möge es helfen, daß das Rad nicht neu erfinden zu müssen :-)

Gruß
Henning
 

Anhänge

hehol schrieb:
Hallo,

ich habe einen Patch zusammengestellt, mit dem sich Enrik's Buildroot mit dem aktuell von AVM erhältlichen Quellcode compilieren läßt. Möge es helfen, daß das Rad nicht neu erfinden zu müssen :-)

Gruß
Henning

Holla!

Das ist interessant für mich da ich schon seit 2 Tagen krampfhaft versuche das buildroot von enrik zum laufen zu bewegen! Folgende Probleme kamen auf mich zu (Debian unstable):

1. make menuconfig geht nicht -> bug in busybox? Habe stattdessen make config benutzt...

2. habe keine Anleitung von enrik gefunden, auf die sich hier einige im Foum beziehen :-( Kann mir die bitte einer zukommen lassen?

3. Habe deinen Patch eingespielt aber es kommen noch diverse andere Fehlermeldungen! Habe z.b. "./kernel_ohio-8mb_build/" statt "kernel_4mb_build" in der avm-gpl.mk anpassen müssen (avm hat die sources anscheinend auch noch mit ./ gepackt ^^). Dann ist die aktuelle version kernel-src-920.tar.gz...
Nun habe ich noch diesen Fehler, wo ich mit meinem Latein am Ende bin:
rm -rf /home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/linux-2.4.17_mvl21
mv /home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21 /home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel
mv /home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/kernel_ohio-8mb_build/Config.4mb \
/home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/linux-2.4.28-pre4-erik/.config.AVM
mv: cannot move `/home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/kernel_ohio-8mb_build/Config.4mb' to `/home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/linux-2.4.28-pre4-erik/.config.AVM': No such file or directory
make: *** [/home/rom/1_TOP/Fritz.box/Firm/Firm_Environment/buildroot/build_mipsel/linux-2.4.17_mvl21/.unpacked] Error 1
Das kommt aus der avm-gpl.mk, die Variable LINUX_DIR ist scheinbar auf linux-2.4.28-pre4-erik gesetzt was leider nicht angelegt wird (kommt aus LINUX_HEADERS_DIR)...

Also ich weiss erstmal nicht weiter. Bitte also um die Anleitung von enrik, eine .config wäre auch recht hilfreich da ich nicht weiss was ich da alles einstellen sollte...
 
Hallo CuBe_X,

AVM hat vorgestern (am 11.1.) ein neues Quellcodearchiv auf dem FTP-Server abgelegt. Da die Buildroot-Umgebung immer die aktuellste Datei (fritzbox-source-files-current.tar.gz) herunterlädt und AVM offensichtlich immer ein wenig an den Pfaden verändert, passt mein Patch nicht mehr zum aktuellen Quellcode. Du kannst versuchen, in package/avm-gpl/avm-gpl.mk den Download-URL zu ändern und eine ältere Kopie der Quelldateien herunterzuladen.

Ich bin selbst erst durch Dein Posting auf den neuen Quellcode aufmerksam geworden, deswegen habe ich mir noch nicht angesehen, was im neuen fritzbox-source-files-current.tar.gz schönes verpackt ist :-)

Henning
 
Hallo Henning!

Ja das habe ich mir gedacht dass die frisch sind ;) Werde mal schauen ob es mit einer der älteren Quellen passt...
Schade eigentlich dass es mit den neuen nicht geht bzw ich nicht weiterkomme.
Naja kommt Zeit kommt Rat :-)

p.s.
Wie sieht es eigentlich aus mit der Anleitung von enrik? Hast du die eventuell?
 
Hi.
Ich hab mal einen Patch von meiner Datei erstellt. Vielleicht findest du den Unterschied.
Code:
--- avm-gpl.mk 2005-02-13 20:38:09.000000000 +0100
+++ avm-gpl.mk.patched 2006-01-13 20:46:33.110544680 +0100
@@ -3,12 +3,12 @@
 # AVM GPL Sources for the Fritz!Box
 #
 #############################################################
-AVM_GPL_SOURCE:=gpl-source-files-03.22-ar7bin-build_664-359m.tar.gz
+AVM_GPL_SOURCE:=fritzbox-source-files-current.tar.gz
 AVM_GPL_SITE:=ftp://ftp.avm.de/develper/opensrc
-AVM_GPL_DIR:=$(BUILD_DIR)/avm_gpl-build-644-359
+AVM_GPL_DIR:=$(BUILD_DIR)/avm_gpl
 AVM_GPL_CAT:=zcat
 
-AVM_KERNEL_SOURCE:=kernel-src-462.tar.gz
+AVM_KERNEL_SOURCE:=kernel-src-920.tar.gz
 AVM_KERNEL_DIR:=$(AVM_GPL_DIR)/GPL
 
 LINUX_MODULES_DIR:=$(TARGET_DIR)/lib/modules/2.4.17_mvl21-malta-mips_fp_le
@@ -37,21 +37,26 @@
 $(LINUX_DIR)/.unpacked: $(AVM_GPL_DIR)/.unpacked
  $(AVM_GPL_CAT) $(AVM_KERNEL_DIR)/$(AVM_KERNEL_SOURCE) |\
    tar -C $(BUILD_DIR) $(TAR_OPTIONS) - \
-     'kernel_build/kernel/linux-2.4.17_mvl21*' \
-     'kernel_build/Config.Fritz_Box_All'
+     './kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21*' \
+     './kernel_ohio-8mb_build/Config.4mb'
  rm -rf $(BUILD_DIR)/linux-2.4.17_mvl21
- mv $(BUILD_DIR)/kernel_build/kernel/linux-2.4.17_mvl21 $(BUILD_DIR)
- mv $(BUILD_DIR)/kernel_build/Config.Fritz_Box_All \
+ mv $(BUILD_DIR)/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21 $(BUILD_DIR)
+ mv $(BUILD_DIR)/kernel_ohio-8mb_build/Config.4mb \
    $(LINUX_DIR)/.config.AVM
- rm -rf $(BUILD_DIR)/kernel_build
+ rm -rf $(BUILD_DIR)/kernel_ohio-8mb_build
  cd $(LINUX_DIR) && \
    ../../package/avm-gpl/fix-kernel-tree
+   rm $(LINUX_DIR)/fs/squashfs/inode.c
+   rm $(LINUX_DIR)/fs/squashfs/Makefile
+   rm $(LINUX_DIR)/include/linux/squashfs_fs.h
+   rm $(LINUX_DIR)/include/linux/squashfs_fs_i.h
+   rm $(LINUX_DIR)/include/linux/squashfs_fs_sb.h
  toolchain/patch-kernel.sh $(LINUX_DIR) package/avm-gpl/patches
  touch $@
 
 $(LINUX_DIR)/.config: $(LINUX_DIR)/.unpacked
  #cp $(LINUX_DIR)/.config.AVM $@
- cp package/avm-gpl/kernel+modules.config $@
+ cp package/avm-gpl/Config.4mb $@
 
 $(LINUX_DIR)/.configured: $(LINUX_DIR)/.config
  $(MAKE) -C $(LINUX_DIR) clean
@@ -80,7 +85,7 @@
  PATH=$(TARGET_PATH) \
    $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE=$(TARGET_CROSS) \
    MODLIB=$(LINUX_MODULES_DIR)/tmp modules_install
- cp -a $(LINUX_MODULES_DIR)/tmp/* $(LINUX_MODULES_DIR)
+ sudo cp -a $(LINUX_MODULES_DIR)/tmp/* $(LINUX_MODULES_DIR)
  rm -rf $(LINUX_MODULES_DIR)/tmp
  touch $@
MfG Oliver
 
Danke Oliver!

Werde mir dein Patchfile genauer anschauen. Mittlerweile habe ich mir angeschaut wie die files aufgebaut werden.

Habe also fritzbox-source-files-03.87.tar.gz eingetragen, den Patch von hehol gemacht und dann noch den Patch target/fritz/patches/010-no-hidden-mount.patch angepasst da der nicht ging (Wozu braucht man den eigentlich?)
Soweit gut, alles lief ca 15min bis folgende Fehlermeldung kam:

/bin/sh ../libtool --tag CXX --tag disable-shared --mode=compile /tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/gcc/xgcc -shared-libgcc -B/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/gcc/ -nostdinc++ -L/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/src -L/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/src/.libs -B/tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/bin/ -B/tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/lib/ -isystem /tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/../gcc -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/../include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/include/mipsel-linux-uclibc -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/libsupc++ -g -Os -fno-implicit-templates -prefer-pic -Wall -Wno-format -W -Wwrite-strings -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -c /tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/libsupc++/new_op.cc
/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/gcc/xgcc -shared-libgcc -B/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/gcc/ -nostdinc++ -L/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/src -L/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/src/.libs -B/tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/bin/ -B/tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/lib/ -isystem /tmp/buildroot/build_mipsel/staging_dir/mipsel-linux-uclibc/include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/../gcc -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/../include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/include/mipsel-linux-uclibc -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/include -I/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/libsupc++ -g -Os -fno-implicit-templates -Wall -Wno-format -W -Wwrite-strings -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -c /tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5/libstdc++-v3/libsupc++/new_op.cc -fPIC -DPIC -o new_op.o
/tmp/ccAvbrSb.s: Assembler messages:
/tmp/ccAvbrSb.s:255: Error: can't resolve `DW.ref._ZTISt9bad_alloc' {.gnu.linkonce.d.DW.ref._ZTISt9bad_alloc section} - `L0' {.gcc_except_table section}
make[4]: *** [new_op.lo] Error 1
make[4]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3/libsupc++'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3'
make[2]: *** [all-recursive-am] Error 2
make[2]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/mipsel-linux-uclibc/libstdc++-v3'
make[1]: *** [all-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final'
make: *** [/tmp/buildroot/toolchain_build_mipsel/gcc-3.3.5-final/.compiled] Error 2

Ähh könnt ihr mir bitte einen Tip geben wie ich dem abhelfen könnte? Habe erstmal leider keine Idee :-|
 
CuBe_X schrieb:
Ähh könnt ihr mir bitte einen Tip geben wie ich dem abhelfen könnte? Habe erstmal leider keine Idee :-|
Sicher. :cool:
make menuconfig->Toolchain Options-> Build c++ compiler Haken entfernen

MfG Oliver
 
olistudent schrieb:
Sicher. :cool:
make menuconfig->Toolchain Options-> Build c++ compiler Haken entfernen

MfG Oliver

Cool :cool:! Danke ;)

Tja ist mir jetzt auch irgendwie einleuchtend dass ich keinen gcc auf der box brauche...^^

Jetzt kämpfe ich noch damit dass die Option --trap unbekannt ist :-(
Selbst Forumssuche, googlen und bei gcc.org schauen hat nicht geholfen...??
 
Hi.
Der g++ ist ja auch nicht für die Box. Man könnte theoretisch auch C++ Programme auf der Box laufen lassen. Nur die libstdc++ ist nicht gerade klein...

Poste mal die Ausgabe mit dem Fehler (--trap). Dann kann ich dir weiterhelfen.

MfG Oliver
 
olistudent schrieb:
Hi.
Der g++ ist ja auch nicht für die Box. Man könnte theoretisch auch C++ Programme auf der Box laufen lassen. Nur die libstdc++ ist nicht gerade klein...

Poste mal die Ausgabe mit dem Fehler (--trap). Dann kann ich dir weiterhelfen.

MfG Oliver

Hmm...irgendwie blicke ich noch nicht ganz durch :-| Also die Option "Build c++ compiler" bedeutet doch dass ein gcc gebaut wird der auf mipsel läuft, oder habe ich da einen Denkfehler?

Den trap-Fehler habe ich nicht mehr (habe alles nochmal frisch entpackt und gepatcht...). Nach ein paar stops wegen falschen DL-Links bin ich fast ans Ziel angekommen. Aber kurz vor Ende dann das hier:
make[2]: Nothing to be done for `modules_install'.
make[2]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/mips-boards/ti_avalanche'
make -C arch/mips/mips-boards/generic modules_install
make[2]: Entering directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/mips-boards/generic'
make[2]: Nothing to be done for `modules_install'.
make[2]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/mips-boards/generic'
make -C arch/mips/kernel modules_install
make[2]: Entering directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/kernel'
make[2]: Nothing to be done for `modules_install'.
make[2]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/kernel'
make -C arch/mips/mm modules_install
make[2]: Entering directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/mm'
make[2]: Nothing to be done for `modules_install'.
make[2]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/mm'
make -C arch/mips/lib modules_install
make[2]: Entering directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/lib'
make[2]: Nothing to be done for `modules_install'.
make[2]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/arch/mips/lib'
cd /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/tmp; \
mkdir -p pcmcia; \
find kernel -path '*/pcmcia/*' -name '*.o' | xargs -i -r ln -sf ../{} pcmcia
if [ "/tmp/buildroot/build_mipsel/staging_dir/bin/mipsel-linux-uclibc-" = "" ]; then \
if [ -r System.map ]; then \
"/sbin/"depmod -ae -F System.map -b /tmp -r 2.4.17_mvl21-malta-mips_fp_le;fi;fi
make[1]: Leaving directory `/tmp/buildroot/build_mipsel/linux-2.4.17_mvl21'
cp -a /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/tmp/* /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le
rm -rf /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/tmp
touch /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/.modules
perl /tmp/buildroot/build_mipsel/busybox-1.00/examples/depmod.pl -k /tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/vmlinux -b /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le
unresolved symbol register_isdn in file /lib/modules/2.4.17_mvl21-malta-mips_fp_le/kernel/drivers/isdn/avmb1/capidrv.o
chmod -R go-w /tmp/buildroot/build_mipsel/root
fakeroot busybox tar cvf /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/kernel/hidden/var.tar -C /tmp/buildroot/build_mipsel/root ./var || \
busybox tar cvf /tmp/buildroot/build_mipsel/root/lib/modules/2.4.17_mvl21-malta-mips_fp_le/kernel/hidden/var.tar -C /tmp/buildroot/build_mipsel/root ./var
/usr/bin/fakeroot: line 150: busybox: command not found
/bin/sh: line 1: busybox: command not found
make: *** [kernel.image] Error 127
Da wird versucht busybox auf meinem hostsystem auszuführen?
Busybox wurde erstellt (halt recht gross: 634312b), und auf der FritzBox bekomme ich ein "can't load library: libgcc_s.so.1"...

Für jede Hilfestellung wäre ich dankbar, bin halt noch ein Newbie ;)
 
CuBe_X schrieb:
Hmm...irgendwie blicke ich noch nicht ganz durch :-| Also die Option "Build c++ compiler" bedeutet doch dass ein gcc gebaut wird der auf mipsel läuft, oder habe ich da einen Denkfehler?
Nee, da wird ein Compiler erstellt, der auf deinem Hostsystem läuft, jedoch Binaries für MIPS erzeugt. (Das nennt man dann einen Cross-Compiler)

Da wird versucht busybox auf meinem hostsystem auszuführen?
Busybox wurde erstellt (halt recht gross: 634312b), und auf der FritzBox bekomme ich ein "can't load library: libgcc_s.so.1"...

Für jede Hilfestellung wäre ich dankbar, bin halt noch ein Newbie ;)

Ja, zum bauen des Images ist Busybox auf dem Hostsystem erforderlich. (Nicht das erstellte Busybox, das ist für MIPS, sondern ein Busybox für dein System, also warscheinlich linux-x386).
Das liegt meines Wissens daran, dass die Fritzbox nur bestimmte tar-Archiv-Versionen versteht. Also wird das Image nicht mit tar sondern mit "busybox tar" erstellt.

cu
Tim
 
Danke erstmal für eure Hilfe!

Gnaddelwarz schrieb:
Nee, da wird ein Compiler erstellt, der auf deinem Hostsystem läuft, jedoch Binaries für MIPS erzeugt. (Das nennt man dann einen Cross-Compiler)

Also doch...und wieso hat oliver mir oben geraten die Option abzuschalten und mein Fehler war weg? Ohne den cross-compiler kann ich doch dann keine Progs für mips compilen oder?

Ja, zum bauen des Images ist Busybox auf dem Hostsystem erforderlich. (Nicht das erstellte Busybox, das ist für MIPS, sondern ein Busybox für dein System, also warscheinlich linux-x386).
Das liegt meines Wissens daran, dass die Fritzbox nur bestimmte tar-Archiv-Versionen versteht. Also wird das Image nicht mit tar sondern mit "busybox tar" erstellt.

cu
Tim

Aha danke! Habe es nachinstalliert...

Jetzt ist noch das image zu gross...dieses Problem kennt ihr ja bestimmt. Werde mal die Suche anwerfen...
Creating little endian 2.1 filesystem on fs.tmp, block size 65536.

Little endian filesystem, data block size 65536, compressed data, compressed metadata, compressed fragments
Filesystem size 5533.10 Kbytes (5.40 Mbytes)
25.88% of uncompressed filesystem size (21383.58 Kbytes)
Inode table size 9128 bytes (8.91 Kbytes)
31.16% of uncompressed inode table size (29296 bytes)
Directory table size 8872 bytes (8.66 Kbytes)
47.48% of uncompressed directory table size (18686 bytes)
Number of duplicate files found 172
Number of inodes 1217
Number of files 976
Number of fragments 56
Number of symbolic links 162
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 79
Number of uids 1
root (0)
Number of gids 0
rm -rf /tmp/buildroot/build_mipsel/tmproot
cat /tmp/buildroot/build_mipsel/linux-2.4.17_mvl21/ram_zimage_pad.bin fs.tmp > img.tmp
rm -f fs.tmp
dd if=img.tmp of=kernel.image bs=64k count=11 conv=sync
11+0 records in
11+0 records out
720896 bytes (721 kB) copied, 0.002704 seconds, 267 MB/s
dd if=img.tmp of=filesystem.image bs=64k skip=11 conv=sync
84+1 records in
85+0 records out
5570560 bytes (5.6 MB) copied, 0.023493 seconds, 237 MB/s
rm -f img.tmp
filesystem.image too large! ABORT!
make: *** [kernel.image] Error 1

Generell habe ich noch paar Fragezeichen:

Die Optionen im menuconfig "package selection for the target" ; was wähle ich denn da aus wenn erstmal ein cross-compiler erstellt wird? Für was sind die tools gedacht, das ist ja nicht die Auswahl an Befehlen die ich in der Busybox haben möchte oder?
 
Zuletzt bearbeitet:
CuBe_X schrieb:
Also doch...und wieso hat oliver mir oben geraten die Option abzuschalten und mein Fehler war weg? Ohne den cross-compiler kann ich doch dann keine Progs für mips compilen oder?
Du hast ja den g++ deaktiviert (den brauchen wir nicht), der gcc wird weiterhin gebaut und mit ihm werden die Programme für die Box kompiliert.
CuBe_X schrieb:
Jetzt ist noch das image zu gross...dieses Problem kennt ihr ja bestimmt. Werde mal die Suche anwerfen...
Such mal nach den LZMA Patches.

Mfg,
danisahne
 
Hi.
Wenn das Image zu groß ist musst du unter build_mipsel/root nachschauen was soviel Platz belegt.
Das dann im "make menuconfig" deaktivieren, das Binary unter root/... löschen und nochmal probieren.
Es kann sein, dass ohne lzma nicht mal mehr der dropbear passt!

Ich mach es im Moment so, dass ich mit dem buildroot nur die Programm kompiliere und die dann in den dsmod reinkopiere. Ist irgendwie stressfeier. ;-)

MfG Oliver
 
Hallo,

ich wollte mir jetzt mal ein GCC für die Box bauen, damit ich ein paar Programme auf der Box compilieren kann, hänge jetzt aber nach Anwendung aller Patches und Ratschläge hier an der Stelle:

Code:
lansrv02 buildroot # make
zcat /usr/toolchains/buildroot/build_mipsel/avm_gpl/GPL/kernel-src-462.tar.gz |\
  tar -C /usr/toolchains/buildroot/build_mipsel -xf - \
    'kernel_build/kernel/linux-2.4.17_mvl21*' \
    'kernel_build/Config.Fritz_Box_All'
rm -rf /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21
mv /usr/toolchains/buildroot/build_mipsel/kernel_build/kernel/linux-2.4.17_mvl21 /usr/toolchains/buildroot/build_mipsel
mv /usr/toolchains/buildroot/build_mipsel/kernel_build/Config.Fritz_Box_All \
  /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/.config.AVM
rm -rf /usr/toolchains/buildroot/build_mipsel/kernel_build
cd /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21 && \
  ../../package/avm-gpl/fix-kernel-tree
rm /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/fs/squashfs/inode.c
rm /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/fs/squashfs/Makefile
rm /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/include/linux/squashfs_fs.h
rm /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/include/linux/squashfs_fs_i.h
rm /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/include/linux/squashfs_fs_sb.h
toolchain/patch-kernel.sh /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21 package/avm-gpl/patches

Applying package/avm-gpl/patches/010_contiguous-squashfs.patch using plaintext:
patching file drivers/mtd/maps/avalanche-flash.c
Hunk #1 succeeded at 221 (offset -15 lines).
Hunk #2 succeeded at 247 (offset -15 lines).
Hunk #3 succeeded at 266 with fuzz 1 (offset -15 lines).
Hunk #4 FAILED at 279.
Hunk #5 FAILED at 336.
Hunk #6 FAILED at 364.
Hunk #7 succeeded at 378 (offset -33 lines).
3 out of 7 hunks FAILED -- saving rejects to file drivers/mtd/maps/avalanche-flash.c.rej
patching file init/main.c
Hunk #1 succeeded at 804 (offset -3 lines).
Patch failed!  Please fix package/avm-gpl/patches/010_contiguous-squashfs.patch!
make: *** [/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/.unpacked] Error 1

Hat jemand einen Tip, was hier schief läuft - oder besser gesagt, wie ich das ganze dazu bekomme, das es läuft?

p7
 
Entferne den Patch 010_contiguous-squashfs.patch. Die neuen Kernelsourcen haben das nun implementiert, so dass der Patch überflüssig ist.

Mfg,
danisahne
 
Hi,

danke für den Hinweis. Ich bin jetzt auch etwas weiter gekommen:
Code:
make[6]: Entering directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char'
make -C agp fastdep
make[7]: Entering directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char/agp'
/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/scripts/mkdep -I /usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/include/asm/gcc -D__KERNEL__ -I/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer  -G 0 -mno-abicalls -fno-pic -march=4kc -Wa,--trap -nostdinc -pipe  -- agp.h agpgart_be.c agpgart_fe.c > .depend
make[7]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char/agp'
make -C avm_event fastdep
make[7]: Entering directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char/avm_event'
make[7]: *** No rule to make target `fastdep'.  Stop.
make[7]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char/avm_event'
make[6]: *** [_sfdep_avm_event] Error 2
make[6]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char'
make[5]: *** [fastdep] Error 2
make[5]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers/char'
make[4]: *** [_sfdep_char] Error 2
make[4]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers'
make[3]: *** [fastdep] Error 2
make[3]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/drivers'
make[2]: *** [_sfdep_drivers] Error 2
make[2]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21'
make[1]: *** [dep-files] Error 2
make[1]: Leaving directory `/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21'
make: *** [/usr/toolchains/buildroot/build_mipsel/linux-2.4.17_mvl21/.configured] Error 2
Mal eine Frage: Wäre es vllt. auf Dauer nicht für viele einfacher, ein kleines Images zusammenzubauen für QEMU (hat mittlerweile auch eine MIPS-Emulation) in dem eine "AVM-MIPSEL" Distribution läuft? Dann müsste man sich nur noch das QEMU-Image runterladen, laufen lassen und hat eine MIPS-Umgebung in der man nicht nur compilieren sondern auch testen kann. Von der Performance mag das vllt. nicht das Optimale sein, die Sachen die man für die FB compiliert, dürften aber im Normalfall auch keine "Megasachen" sein.

p7
 
Kostenlos!

Statistik des Forums

Themen
248,885
Beiträge
2,303,946
Mitglieder
378,564
Neuestes Mitglied
warumdas