[Frage] Build unter Debian Testing x64

utiltiy

Neuer User
Mitglied seit
12 Okt 2005
Beiträge
22
Punkte für Reaktionen
0
Punkte
1
Hallo,
aktuell bekomme ich das beim Bau:

Code:
In file included from /home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5/gcc/cp/except.c:1008:0:
cfns.gperf: In function ‘const char* libc_name_p(const char*, unsigned int)’:
cfns.gperf:101:1: error: ‘const char* libc_name_p(const char*, unsigned int)’ redeclared inline with ‘gnu_inline’ attribute
cfns.gperf:26:14: note: ‘const char* libc_name_p(const char*, unsigned int)’ previously declared here
cfns.gperf: At global scope:
cfns.gperf:26:14: warning: inline function ‘const char* libc_name_p(const char*, unsigned int)’ used but never defined
Makefile:1059: die Regel für Ziel „cp/except.o“ scheiterte
make[3]: *** [cp/except.o] Fehler 1
make[3]: *** Es wird auf noch nicht beendete Prozesse gewartet...
make[3]: Verzeichnis „/home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5-final/gcc“ wird verlassen
Makefile:3907: die Regel für Ziel „all-gcc“ scheiterte
make[2]: *** [all-gcc] Fehler 2
make[2]: Verzeichnis „/home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5-final“ wird verlassen
Makefile:855: die Regel für Ziel „all“ scheiterte
make[1]: *** [all] Fehler 2
make[1]: Verzeichnis „/home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5-final“ wird verlassen
toolchain/make/target/gcc/gcc.mk:188: die Regel für Ziel „/home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5-final/.compiled“ scheiterte
make: *** [/home/freetz/freetz-trunk-2/source/toolchain-mips_gcc-4.8.5_uClibc-0.9.33.2-nptl/gcc-4.8.5-final/.compiled] Fehler 2

Code:
dpkg -l | grep gcc
ii  gcc                               4:6.1.1-1                    amd64        GNU C compiler
ii  gcc-4.9-base:amd64                4.9.3-14                     amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-5                             5.4.1-1                      amd64        GNU C compiler
ii  gcc-5-base:amd64                  5.4.1-1                      amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-5-multilib                    5.4.1-1                      amd64        GNU C compiler (multilib support)
ii  gcc-6                             6.1.1-11                     amd64        GNU C compiler
ii  gcc-6-base:amd64                  6.1.1-11                     amd64        GCC, the GNU Compiler Collection (base package)
ii  gcc-6-multilib                    6.1.1-11                     amd64        GNU C compiler (multilib support)
ii  gcc-multilib                      4:6.1.1-1                    amd64        GNU C compiler (multilib files)
ii  lib32gcc-5-dev                    5.4.1-1                      amd64        GCC support library (32 bit development files)
ii  lib32gcc-6-dev                    6.1.1-11                     amd64        GCC support library (32 bit development files)
ii  lib32gcc1                         1:6.1.1-11                   amd64        GCC support library (32 bit Version)
ii  libgcc-5-dev:amd64                5.4.1-1                      amd64        GCC support library (development files)
ii  libgcc-6-dev:amd64                6.1.1-11                     amd64        GCC support library (development files)
ii  libgcc1:amd64                     1:6.1.1-11                   amd64        GCC support library
ii  libx32gcc-5-dev                   5.4.1-1                      amd64        GCC support library (x32 development files)
ii  libx32gcc-6-dev                   6.1.1-11                     amd64        GCC support library (x32 development files)
ii  libx32gcc1                        1:6.1.1-11                   amd64        GCC support library (x32)

Was kann ich tun, Testing zu neu?
 
Die betreffenden Stellen im GCC 4.8 (ftp://gcc.gnu.org/pub/gcc/snapshots/LATEST-4.8/gcc-4.8-20150611.tar.bz2) sehen so aus:
Code:
cfns.perf
[...]
#ifdef __GNUC__
__inline
#endif
static unsigned int hash (const char *, unsigned int);
#ifdef __GNUC__
__inline
#endif
const char * libc_name_p (const char *, unsigned int);
[...]

cfns.h
[...]
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const char *
libc_name_p (register const char *str, register unsigned int len)
[...]
Solange also __GNUC_STDC_INLINE__ definiert ist (ich gehe mal davon aus, daß für das Kompilieren des GCC 4.8.5 als "bootstrap" bei Dir dann GCC 5 oder 6 genutzt wurde - hier wäre "Aufklärung" Deinerseits ja leicht möglich), ergibt das zwei unterschiedliche Prototypen.

Was kann man tun? Einfach GCC 4 verwenden für die Übersetzung des GCC für "buildroot" oder eben die Stelle oben patchen ... wobei ersteres vermutlich leichter zu bewerkstelligen ist und ob beim Patchen nicht noch mehr Probleme auftreten, müßte man auch erst probieren.

Ich glaube nicht, daß sich irgendjemand dafür interessieren wird, daß sich GCC 4.8 nicht mit einem GCC 5 oder 6 (oder meinetwegen auch beiden) übersetzen läßt. Auch GCC 4 ist inzwischen eben bei 4.9 angekommen (der Snapshot ist wenigstens aus diesem Jahr), 4.8 ist recht alt und vermutlich bei Freetz auch nur noch in Benutzung, weil AVM sich da bisher wohl nicht zum Update entschließen konnte.

Dort wird eben für "buildroot" immer noch GCC 4.8.3 verwendet - wenn man den OpenSource-Paketen glauben will (was auch nicht zwingend sein muß) ... immerhin benutzt Freetz ja schon GCC 4.8.5.
 
Danke, ich hab mir jetzt eine V-Box mit Debian Stable gemacht :)
 
Fehler im Titel, x86_64
 
Sorry. lässt sich nicht mehr anpassen....
 
Natürlich lässt sich das noch anpassen.
 
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.