[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tyndur-devel] GCC 5.3.1 kann GCC 4.5.2 nicht bauen.



On Tue, Apr 26, 2016 at 06:00:02PM +0200, Morten Delenk wrote:
> GCC 5.3.1 kann nicht GCC 4.5.2 bauen. Der Bauvorgang wird mit den
> Fehlermeldungen "cfns.gperf: Auf höchster Ebene:
> cfns.gperf:101:1: Fehler: Attribut »gnu_inline« vorhanden bei »libc_name_p«
> cfns.gperf:26:14: Fehler: aber nicht hier" abgebrochen
> Angehangen ist die tmp/gcc.log, die von mir mt xz komprimiert wurde.
> 
> Eine Frage von mir: Kann Tyndur auch mit GCC 5.3.1 gebaut werden,
> oder gibt es spezielle Einschränkungen wegen des Compilers?

Du kannst mal probieren, ob dieser Patch hilft:
https://gcc.gnu.org/ml/gcc-patches/2015-08/msg00375.html

Konkret würdest du dazu die Hunks an patches/gcc/4.5.2/gcc-4.5.2.patch
anhängen und den Pfad so ändern, dass sie wie im Rest von Patch aussehen
und mit patch -p0 funktionieren (oder falls der Patch nicht ganz auf
4.5.2 passt, musst du die Änderungen sinngemäß von Hand machen, dann ein
diff machen und die richtigen Hunks hinten anhängen; einfach nur manuell
die Änderungen machen hilft nicht, weil build_crosstools die Sourcen neu
entpackt):

--- ../gcc-4.5.2/gcc/cp/cfns.gperf
+++ ./gcc/cp/cfns.gperf
@@ -22,6 +22,9 @@ __inline
 static unsigned int hash (const char *, unsigned int);
 #ifdef __GNUC__
 __inline
+#ifdef __GNUC_STDC_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
 #endif
 const char * libc_name_p (const char *, unsigned int);
 %}
--- ../gcc-4.5.2/gcc/cp/cfns.h
+++ ./gcc/cp/cfns.h
@@ -53,6 +53,9 @@ __inline
 static unsigned int hash (const char *, unsigned int);
 #ifdef __GNUC__
 __inline
+#ifdef __GNUC_STDC_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
 #endif
 const char * libc_name_p (const char *, unsigned int);
 /* maximum key range = 391, duplicates = 0 */


Wenn das für dich funktioniert, können wir das so übernehmen.

Kevin