[Problem] Build läuft nicht durch

Coolzero82

Mitglied
Mitglied seit
24 Sep 2013
Beiträge
345
Punkte für Reaktionen
2
Punkte
18
Hallo,
ich habe heute meinen trunk geupdatete, und danach klappt der build z.b. für die 7490 mit 6.6 nicht mehr, auch ein "make tools-distclean" bringt keine Besserung, hab dann nochmal komplett neu ausgecheckt, aber auch dann klappt es nicht und bricht mit diesem Fehler ab:
Code:
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
configure: WARNING: unrecognized options: --disable-nls
touch /home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8/.configured
make -j2 -C /home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8 all
make[1]: Verzeichnis „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8“ wird betreten
make  all-am
make[2]: Verzeichnis „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8“ wird betreten
depbase=`echo sfk.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I.     -g -O2  -MT sfk.o -MD -MP -MF $depbase.Tpo -c -o sfk.o sfk.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo sfkext.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I.     -g -O2  -MT sfkext.o -MD -MP -MF $depbase.Tpo -c -o sfkext.o sfkext.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from sfkext.cpp:12:0:
sfkbase.hpp:143:15: error: expected primary-expression before ‘unsigned’
 #define bool  unsigned char
               ^
sfkbase.hpp:143:15: error: expected ‘}’ before ‘unsigned’
In file included from /usr/include/c++/6/cmath:42:0,
                 from /usr/include/c++/6/math.h:36,
                 from sfkext.cpp:36:
/usr/include/c++/6/bits/cpp_type_traits.h:89:41: error: invalid use of qualified-name ‘_Sp::__value’
       enum { __value = bool(_Sp::__value) || bool(_Tp::__value) };
                                         ^
/usr/include/c++/6/bits/cpp_type_traits.h:89:41: error: expected ‘;’ at end of member declaration
/usr/include/c++/6/bits/cpp_type_traits.h:89:43: error: expected unqualified-id before ‘||’ token
       enum { __value = bool(_Sp::__value) || bool(_Tp::__value) };
                                           ^~
/usr/include/c++/6/bits/cpp_type_traits.h:90:37: error: ‘__value’ was not declared in this scope
       typedef typename __truth_type<__value>::__type __type;
                                     ^~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:90:44: error: template argument 1 is invalid
       typedef typename __truth_type<__value>::__type __type;
                                            ^
/usr/include/c++/6/bits/cpp_type_traits.h:98:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:105:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:113:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:120:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:130:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:141:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:148:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:155:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:159:12: error: redefinition of ‘struct __is_integer<unsigned char>’
     struct __is_integer<unsigned char>
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:138:12: error: previous definition of ‘struct __is_integer<unsigned char>’
     struct __is_integer<bool>
            ^~~~~~~~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:170:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:179:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:186:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:194:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:201:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:208:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:215:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:222:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:229:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:236:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:243:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:261:1: error: ‘__true_type’ does not name a type
 __INT_N(__GLIBCXX_TYPE_INT_N_0)
 ^
/usr/include/c++/6/bits/cpp_type_traits.h:261:1: error: ‘__true_type’ does not name a type
 __INT_N(__GLIBCXX_TYPE_INT_N_0)
 ^
/usr/include/c++/6/bits/cpp_type_traits.h:282:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:290:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:297:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:304:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:314:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:321:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:329:23: error: expected template-name before ‘<’ token
     : public __traitor<__is_integer<_Tp>, __is_floating<_Tp> >
                       ^
/usr/include/c++/6/bits/cpp_type_traits.h:329:23: error: expected ‘{’ before ‘<’ token
/usr/include/c++/6/bits/cpp_type_traits.h:337:23: error: expected template-name before ‘<’ token
     : public __traitor<__is_arithmetic<_Tp>, __is_pointer<_Tp> >
                       ^
/usr/include/c++/6/bits/cpp_type_traits.h:337:23: error: expected ‘{’ before ‘<’ token
/usr/include/c++/6/bits/cpp_type_traits.h:347:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:354:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:362:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:370:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:377:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:384:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:391:15: error: ‘__true_type’ does not name a type
       typedef __true_type __type;
               ^~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:401:15: error: ‘__false_type’ does not name a type
       typedef __false_type __type;
               ^~~~~~~~~~~~
/usr/include/c++/6/bits/cpp_type_traits.h:413:1: error: expected declaration before ‘}’ token
 } // extern "C++"
 ^
Makefile:295: die Regel für Ziel „sfkext.o“ scheiterte
make[2]: *** [sfkext.o] Fehler 1
make[2]: *** Auf noch nicht beendete Prozesse wird gewartet …
make[2]: Verzeichnis „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8“ wird verlassen
Makefile:178: die Regel für Ziel „all“ scheiterte
make[1]: *** [all] Fehler 2
make[1]: Verzeichnis „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8“ wird verlassen
tools/make/sfk-host/sfk-host.mk:29: die Regel für Ziel „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8/sfk“ scheiterte
make: *** [/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8/sfk] Fehler 2

Im Anhang noch die config
 

Anhänge

  • config.zip
    12.3 KB · Aufrufe: 2
Habe den selben Abbruch, mit sfk-1.8.2 hat es noch funktioniert. Ich schaue, woran es liegt.

---------------------------------------

Die fragliche Zeile auskommentieren und es läuft durch:
Code:
#define ulong unsigned long
// #define bool  unsigned char
#define cchar const char
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Coolzero82
Hi, blöde Frage, aber wo kommentierst du das aus? in der.config finde ich die Zeilen nicht
 
In der sfkbase.hpp, siehe auch in der Fehlermeldung vom Compiler.
Anbei ein Patch für das Problem, abzulegen unter tools/make/sfk-host/patches.
 
  • Like
Reaktionen: Coolzero82
hi, patch fehlt, aber schonmal danke
 
siehe Freetz Trac, ich bekomme es nicht hin, hier eine Datei mit Firefox hochzuladen
 
  • Like
Reaktionen: Coolzero82
Super Danke scheint jetzt durch zu laufen
 
Code:
make[1]: Verzeichnis „/home/thomas/freetz-trunk/source/host-tools/sfk-1.8.8“ wird betreten
...
sfkbase.hpp:143:15: error: expected primary-expression before ‘unsigned’
 #define bool  unsigned char
               ^
sfkbase.hpp:143:15: error: expected ‘}’ before ‘unsigned’
In file included from /usr/include/c++/6/cmath:42:0,
                 from /usr/include/c++/6/math.h:36,
                 from sfkext.cpp:36:

Kann es sein, dass dieses Problem Compiler-abhängig ist ? z.B. gcc v6

Bei mir funktionierte der Freetz Build CS14446 der Host-Tools sfk-1.8.8 mit gcc-4.9.2 ohne Probleme:
Code:
freetz@Pi:~/freetz-trunk$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/4.9/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: ../src/configure -v --with-pkgversion='Raspbian 4.9.2-10' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
Thread model: posix
gcc version 4.9.2 (Raspbian 4.9.2-10)
freetz@Pi:~/freetz-trunk$
 
Kann es sein, dass dieses Problem Compiler-abhängig ist ? z.B. gcc v6

Bei mir funktionierte der Freetz Build CS14446 der Host-Tools sfk-1.8.8 mit gcc-4.9.2 ohne Probleme:
Code:
freetz@Pi:~/freetz-trunk$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/4.9/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: ../src/configure -v --with-pkgversion='Raspbian 4.9.2-10' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
Thread model: posix
gcc version 4.9.2 (Raspbian 4.9.2-10)
freetz@Pi:~/freetz-trunk$
Davon gehe ich auch aus. Bin auf Tumbleweed mit gcc-7 unterwegs.
 
auch ich habe ein gcc versions problem auf 32Bit Hostsystem:

Fehlermeldung 1 und Patch hierzu:
Code:
freetz@Pi3:~/freetz-trunk$ make
make -j2 -f Makefile.freetz -C /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt \
        CC="gcc"
make[1]: Entering directory '/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt'
gcc -O2 -m32 -std=c99 -I. -D_GNU_SOURCE  -c -o fdt.o fdt.c
gcc -O2 -m32 -std=c99 -I. -D_GNU_SOURCE  -c -o fdt_ro.o fdt_ro.c
gcc: error: unrecognized command line option â<80><98>-m32â<80><99>
<builtin>: recipe for target 'fdt.o' failed
make[1]: *** [fdt.o] Error 1
make[1]: *** Warte auf noch nicht beendete Prozesse...
gcc: error: unrecognized command line option â<80><98>-m32â<80><99>
<builtin>: recipe for target 'fdt_ro.o' failed
make[1]: *** [fdt_ro.o] Error 1
make[1]: Leaving directory '/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt'
tools/make/dtc-host/dtc-host.mk:22: recipe for target '/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/libfdt.a' failed
make: *** [/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/libfdt.a] Error 2
freetz@PI3:~/freetz-trunk$

freetz@PI3:~/freetz-trunk$ cp -p /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/Makefile.freetz /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/Makefile.freetz.org
freetz@PI3:~/freetz-trunk$ vi /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/Makefile.freetz
freetz@PI3:~/freetz-trunk$ diff /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/Makefile.freetz.org /home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt/Makefile.freetz
8c8
< override CFLAGS   += $(OPT) $(BITNESS) -std=c99
---
> override CFLAGS   += $(OPT) -std=c99
freetz@PI3:~/freetz-trunk$

Fehlermeldung 2 und Patch hierzu:
Code:
freetz@PI3:~/freetz-trunk$ make
make -j2 -f Makefile.freetz -C /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config \
        CC="gcc" \
        LIBFDT_DIR=/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt \
        avm_kernel_config.extract avm_kernel_config.bin2asm
make[1]: Entering directory '/home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config'
gcc -O2 -m32 -std=c99 -W -Wall -I/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt -DUSE_STRIPPED_AVM_KERNEL_CONFIG_H  -c -o avm_kernel_config.extract.o avm_kernel_config.extract.c
gcc -O2 -m32 -std=c99 -W -Wall -I/home/freetz/freetz-trunk/source/host-tools/dtc-1.4.5/libfdt -DUSE_STRIPPED_AVM_KERNEL_CONFIG_H  -c -o lib_avm_kernel_config.o lib_avm_kernel_config.c
gcc: error: unrecognized command line option ‘-m32’
<builtin>: recipe for target 'avm_kernel_config.extract.o' failed
make[1]: *** [avm_kernel_config.extract.o] Error 1
make[1]: *** Warte auf noch nicht beendete Prozesse...
gcc: error: unrecognized command line option ‘-m32’
<builtin>: recipe for target 'lib_avm_kernel_config.o' failed
make[1]: *** [lib_avm_kernel_config.o] Error 1
make[1]: Leaving directory '/home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config'
tools/make/yourfritz-host/yourfritz-host.mk:44: recipe for target '/home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/avm_kernel_config.extract' failed
make: *** [/home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/avm_kernel_config.extract] Error 2
freetz@PI3:~/freetz-trunk$

[CODE]freetz@PI3:~/freetz-trunk$ cp -p /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/Makefile.freetz /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/Makefile.freetz.org
freetz@PI3:~/freetz-trunk$ vi /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/Makefile.freetz
freetz@PI3:~/freetz-trunk$ diff /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/Makefile.freetz.org /home/freetz/freetz-trunk/source/host-tools/yourfritz-41e0b5203c/avm_kernel_config/Makefile.freetz
12c12,13
< override CFLAGS   += $(OPT) $(BITNESS) -std=c99 -W -Wall
---
> #override CFLAGS   += $(OPT) $(BITNESS) -std=c99 -W -Wall
> override CFLAGS   += $(OPT) -std=c99 -W -Wall
14c15
< override LDFLAGS  += $(BITNESS)
---
> #override LDFLAGS  += $(BITNESS)
freetz@PI3:~/freetz-trunk$

@er13: Bitte diesen Patch prüfen, es wäre toll, wenn eine Lösung für 32Bit Hostsysteme wie RPi3 usw. für Freetz bereitgestellt werden könnte.
 
Nur zur ergänzung,
ich nutze gcc6.2 auf ubuntu 16.04
Code:
 gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.2.0-5ubuntu12' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12)
 
@tuxedonet:
Hmm, das ist jetzt kein Build-Problem, das ist grundsätzlich fehlende Unterstützung für ARM als Build-/Host-System.

Ich habe kein RPi, habe jetzt aber folgendes rausgegoogeltfunden:
  1. -m32 / -m64 sind Architektur spezifisch und existieren nur unter x86{,_64}, sparc{,64} und powerpc{,64}
  2. es existieren keine Pendants für diese Flags unter ARM (zumindest Stand jetzt)
  3. ARM bis einschließlich v7 ist ausschließlich 32-bit
  4. erst ab v8 gibt es 64-bit

Das heißt, um das Problem zu lösen, muss man erkennen können, ob es sich bei dem Build-System (in dem Fall gleich Host-System) um ein 32-bit oder ein 64-bit System handelt (die Hoffnung wäre, ein einfaches uname -m würde dafür ausreichen). Falls 32-bit - kann auf die Flags verzichtet werden, falls 64-bit - müssen irgendwelche (Stand jetzt unbekannten) Flags spezifiziert werden, um die 32-bit Bitness zu erzwingen.

z. Info: Sowohl avm_kernel_config*-Binaries als auch libfdt müssen zwingend mit der selben Bitness übersetzt werden wie die des Targets. Grund: avm_kernel_config*-Binaries analysieren/interpretieren Target-Strukturen (32-bit) auf dem Host und verwenden dabei die Target-Definitionen von diesen (sprich die originale avm_kernel_config.h).

Theoretisch wäre es denkbar, den Code so anzupassen, dass er auch im 64-bit Modus die 32-bit Strukturen richtig interpretieren würde. Dann wäre aber eine direkte Verwendung der originalen avm_kernel_config.h nicht möglich.

Ist das eigentlich das einzige Problem, welches Du auf dem RPi hast? Der Rest (bis auf die Verwendung von der Download-Toolchain) läuft durch?

In jedem Fall, falls Interesse besteht, bitte ein Ticket eröffnen und nicht hier dazu mischen. Bei dem Vorschlag von Dir handelt es sich um keine Lösung, danach funktioniert es auf einem x86_64-System nicht mehr.
 
  • Like
Reaktionen: tuxedonet
@er13
DANKE!!!
Freetz Changeset r14458 http://freetz.org/changeset/14458/ hat das Problem gefixt.
Habe soeben mit "make dtc-host-distclean;make yourfritz-host-distclean;svn update;make dtc-host;make yourfritz-host;" eine neue eigne Toolchain auf Raspi2 fehlerfrei erstellt.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.