unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#41091: can't build external gcc
@ 2020-05-05  1:35 Tim Komarov
  2020-05-06 10:21 ` raingloom
  0 siblings, 1 reply; 2+ messages in thread
From: Tim Komarov @ 2020-05-05  1:35 UTC (permalink / raw)
  To: 41091

[-- Attachment #1: Type: text/plain, Size: 1553 bytes --]

Many projects (Buildroot, coreboot, Yocto) require building a toolchain.

Every time it tries to build it (I've checked Buildroot and coreboot) it fails with the following errors:

In file included from ./bconfig.h:3:0,
                 from ../../gcc/gengtype-lex.c:4:
./auto-host.h:2396:16: error: declaration does not declare anything [-fpermissive]
 #define rlim_t long
                ^
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:488:14: error: conflicting declaration of C function ‘void* sbrk(int)’
 extern void *sbrk (int);

In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:496:14: error: ambiguating new declaration of ‘char* strstr(const char*, const char*)’
 extern char *strstr (const char *, const char *);

In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:540:20: error: conflicting declaration of C function ‘const char* strsignal(int)’
 extern const char *strsignal (int);

In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:112:14: error: ambiguating new declaration of ‘char* basename(const char*)’
 extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);

Switching gcc versions doesn't help.

One can find a simple way to reproduce in buildroot.txt, build-gcc.log provides a complete log.

Looking forward for your help. Thanks!

-- 
Best Regards,
Timofey Komarov

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: build-gcc.log --]
[-- Type: text/x-c; name="build-gcc.log", Size: 19669 bytes --]

In file included from ./bconfig.h:3:0,
                 from ../../gcc/gengtype-lex.c:4:
./auto-host.h:2396:16: error: declaration does not declare anything [-fpermissive]
 #define rlim_t long
                ^
/run/current-system/profile/include/bits/resource.h:131:18: note: in expansion of macro ‘rlim_t’
 typedef __rlim_t rlim_t;
                  ^~~~~~
make[2]: *** [Makefile:2671: build/gengtype-parse.o] Error 1
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:456:15: warning: declaration of ‘double atof(const char*)’ has a different exception specifier [-Wpedantic]
 extern double atof (const char *);
               ^~~~
In file included from /run/current-system/profile/include/features.h:450:0,
                 from /run/current-system/profile/include/bits/libc-header-start.h:33,
                 from /run/current-system/profile/include/stdio.h:27,
                 from gengtype-lex.c:20:
/run/current-system/profile/include/bits/stdlib-float.h:25:8: note: from previous declaration ‘double atof(const char*) throw ()’
 __NTH (atof (const char *__nptr))
        ^
/run/current-system/profile/include/sys/cdefs.h:63:35: note: in definition of macro ‘__NTH’
 #   define __NTH(fct) __LEAF_ATTR fct throw ()
                                   ^~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:460:13: warning: declaration of ‘long int atol(const char*)’ has a different exception specifier [-Wpedantic]
 extern long atol (const char *);
             ^~~~
In file included from /run/current-system/profile/include/features.h:450:0,
                 from /run/current-system/profile/include/bits/libc-header-start.h:33,
                 from /run/current-system/profile/include/stdio.h:27,
                 from gengtype-lex.c:20:
/run/current-system/profile/include/stdlib.h:366:8: note: from previous declaration ‘long int atol(const char*) throw ()’
 __NTH (atol (const char *__nptr))
        ^
/run/current-system/profile/include/sys/cdefs.h:63:35: note: in definition of macro ‘__NTH’
 #   define __NTH(fct) __LEAF_ATTR fct throw ()
                                   ^~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:464:13: warning: declaration of ‘void free(void*)’ has a different exception specifier [-Wpedantic]
 extern void free (void *);
             ^~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:563:13: note: from previous declaration ‘void free(void*) throw ()’
 extern void free (void *__ptr) __THROW;
             ^~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:468:14: warning: declaration of ‘char* getcwd(char*, size_t)’ has a different exception specifier [-Wpedantic]
 extern char *getcwd (char *, size_t);
              ^~~~~~
In file included from ../../gcc/system.h:294:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/unistd.h:511:14: note: from previous declaration ‘char* getcwd(char*, size_t) throw ()’
 extern char *getcwd (char *__buf, size_t __size) __THROW __wur;
              ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:472:14: warning: declaration of ‘char* getenv(const char*)’ has a different exception specifier [-Wpedantic]
 extern char *getenv (const char *);
              ^~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:631:14: note: from previous declaration ‘char* getenv(const char*) throw ()’
 extern char *getenv (const char *__name) __THROW __nonnull ((1)) __wur;
              ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:476:12: warning: declaration of ‘int getopt(int, char* const*, const char*)’ has a different exception specifier [-Wpedantic]
 extern int getopt (int, char * const *, const char *);
            ^~~~~~
In file included from /run/current-system/profile/include/bits/getopt_posix.h:27:0,
                 from /run/current-system/profile/include/unistd.h:869,
                 from ../../gcc/system.h:294,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/bits/getopt_core.h:91:12: note: from previous declaration ‘int getopt(int, char* const*, const char*) throw ()’
 extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
            ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:480:12: warning: declaration of ‘int getpagesize()’ has a different exception specifier [-Wpedantic]
 extern int getpagesize (void);
            ^~~~~~~~~~~
In file included from ../../gcc/system.h:294:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/unistd.h:976:12: note: from previous declaration ‘int getpagesize() throw ()’
 extern int getpagesize (void)  __THROW __attribute__ ((__const__));
            ^~~~~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:484:14: warning: declaration of ‘char* getwd(char*)’ has a different exception specifier [-Wpedantic]
 extern char *getwd (char *);
              ^~~~~
In file included from ../../gcc/system.h:294:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/unistd.h:525:14: note: from previous declaration ‘char* getwd(char*) throw ()’
 extern char *getwd (char *__buf)
              ^~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:488:14: error: conflicting declaration of C function ‘void* sbrk(int)’
 extern void *sbrk (int);
              ^~~~
In file included from ../../gcc/system.h:294:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/unistd.h:1041:14: note: previous declaration ‘void* sbrk(intptr_t)’
 extern void *sbrk (intptr_t __delta) __THROW;
              ^~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:492:5: warning: declaration of ‘int setenv(const char*, const char*, int)’ has a different exception specifier [-Wpedantic]
 int setenv(const char *, const char *, int);
     ^~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:650:12: note: from previous declaration ‘int setenv(const char*, const char*, int) throw ()’
 extern int setenv (const char *__name, const char *__value, int __replace)
            ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:496:14: error: ambiguating new declaration of ‘char* strstr(const char*, const char*)’
 extern char *strstr (const char *, const char *);
              ^~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:322:1: note: old declaration ‘const char* strstr(const char*, const char*)’
 strstr (const char *__haystack, const char *__needle) __THROW
 ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:500:14: warning: declaration of ‘char* stpcpy(char*, const char*)’ has a different exception specifier [-Wpedantic]
 extern char *stpcpy (char *, const char *);
              ^~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:451:14: note: from previous declaration ‘char* stpcpy(char*, const char*) throw ()’
 extern char *stpcpy (char *__restrict __dest, const char *__restrict __src)
              ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:504:5: warning: declaration of ‘int unsetenv(const char*)’ has a different exception specifier [-Wpedantic]
 int unsetenv(const char *);
     ^~~~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:654:12: note: from previous declaration ‘int unsetenv(const char*) throw ()’
 extern int unsetenv (const char *__name) __THROW __nonnull ((1));
            ^~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:508:14: warning: declaration of ‘void* malloc(size_t)’ has a different exception specifier [-Wpedantic]
 extern void *malloc (size_t);
              ^~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:539:14: note: from previous declaration ‘void* malloc(size_t) throw ()’
 extern void *malloc (size_t __size) __THROW __attribute_malloc__ __wur;
              ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:512:14: warning: declaration of ‘void* calloc(size_t, size_t)’ has a different exception specifier [-Wpedantic]
 extern void *calloc (size_t, size_t);
              ^~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:541:14: note: from previous declaration ‘void* calloc(size_t, size_t) throw ()’
 extern void *calloc (size_t __nmemb, size_t __size)
              ^~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:516:14: warning: declaration of ‘void* realloc(void*, size_t)’ has a different exception specifier [-Wpedantic]
 extern void *realloc (void *, size_t);
              ^~~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:549:14: note: from previous declaration ‘void* realloc(void*, size_t) throw ()’
 extern void *realloc (void *__ptr, size_t __size)
              ^~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:540:20: error: conflicting declaration of C function ‘const char* strsignal(int)’
 extern const char *strsignal (int);
                    ^~~~~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:446:14: note: previous declaration ‘char* strsignal(int)’
 extern char *strsignal (int __sig) __THROW;
              ^~~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:548:12: warning: declaration of ‘int getrlimit(int, rlimit*)’ has a different exception specifier [-Wpedantic]
 extern int getrlimit (int, struct rlimit *);
            ^~~~~~~~~
In file included from ../../gcc/system.h:439:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/sys/resource.h:50:12: note: from previous declaration ‘int getrlimit(__rlimit_resource_t, rlimit*) throw ()’
 extern int getrlimit (__rlimit_resource_t __resource,
            ^~~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:557:12: warning: declaration of ‘int setrlimit(int, const rlimit*)’ has a different exception specifier [-Wpedantic]
 extern int setrlimit (int, const struct rlimit *);
            ^~~~~~~~~
In file included from ../../gcc/system.h:439:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
/run/current-system/profile/include/sys/resource.h:69:12: note: from previous declaration ‘int setrlimit(__rlimit_resource_t, const rlimit*) throw ()’
 extern int setrlimit (__rlimit_resource_t __resource,
            ^~~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:563:13: warning: declaration of ‘void abort()’ has a different exception specifier [-Wpedantic]
 extern void abort (void);
             ^~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:588:13: note: from previous declaration ‘void abort() throw ()’
 extern void abort (void) __THROW __attribute__ ((__noreturn__));
             ^~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:567:12: warning: declaration of ‘int snprintf(char*, size_t, const char*, ...)’ has a different exception specifier [-Wpedantic]
 extern int snprintf (char *, size_t, const char *, ...);
            ^~~~~~~~
In file included from gengtype-lex.c:20:0:
/run/current-system/profile/include/stdio.h:354:12: note: from previous declaration ‘int snprintf(char*, size_t, const char*, ...) throw ()’
 extern int snprintf (char *__restrict __s, size_t __maxlen,
            ^~~~~~~~
In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
../../gcc/system.h:571:12: warning: declaration of ‘int vsnprintf(char*, size_t, const char*, __va_list_tag*)’ has a different exception specifier [-Wpedantic]
 extern int vsnprintf (char *, size_t, const char *, va_list);
            ^~~~~~~~~
In file included from gengtype-lex.c:20:0:
/run/current-system/profile/include/stdio.h:358:12: note: from previous declaration ‘int vsnprintf(char*, size_t, const char*, __va_list_tag*) throw ()’
 extern int vsnprintf (char *__restrict __s, size_t __maxlen,
            ^~~~~~~~~
/gnu/store/29jhbbg1hf557x8j53f9sxd9imlmf02a-bash-minimal-5.0.7/bin/sh ../../gcc/../move-if-change tmp-optionlist optionlist
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:112:14: error: ambiguating new declaration of ‘char* basename(const char*)’
 extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);
              ^~~~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:483:26: note: old declaration ‘const char* basename(const char*)’
 extern "C++" const char *basename (const char *__filename)
                          ^~~~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:195:12: warning: declaration of ‘int ffs(int)’ has a different exception specifier [-Wpedantic]
 extern int ffs(int);
            ^~~
In file included from /run/current-system/profile/include/string.h:431:0,
                 from gengtype-lex.c:21:
/run/current-system/profile/include/strings.h:104:12: note: from previous declaration ‘int ffs(int) throw ()’
 extern int ffs (int __i) __THROW __attribute_const__;
            ^~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:639:12: warning: declaration of ‘int asprintf(char**, const char*, ...)’ has a different exception specifier [-Wpedantic]
 extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
            ^~~~~~~~
In file included from gengtype-lex.c:20:0:
/run/current-system/profile/include/stdio.h:372:12: note: from previous declaration ‘int asprintf(char**, const char*, ...) throw ()’
 extern int asprintf (char **__restrict __ptr,
            ^~~~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:651:12: warning: declaration of ‘int vasprintf(char**, const char*, __va_list_tag*)’ has a different exception specifier [-Wpedantic]
 extern int vasprintf (char **, const char *, va_list) ATTRIBUTE_PRINTF(2,0);
            ^~~~~~~~~
In file included from gengtype-lex.c:20:0:
/run/current-system/profile/include/stdio.h:366:12: note: from previous declaration ‘int vasprintf(char**, const char*, __va_list_tag*) throw ()’
 extern int vasprintf (char **__restrict __ptr, const char *__restrict __f,
            ^~~~~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:670:15: warning: declaration of ‘size_t strnlen(const char*, size_t)’ has a different exception specifier [-Wpedantic]
 extern size_t strnlen (const char *, size_t);
               ^~~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:390:15: note: from previous declaration ‘size_t strnlen(const char*, size_t) throw ()’
 extern size_t strnlen (const char *__string, size_t __maxlen)
               ^~~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:675:12: warning: declaration of ‘int strverscmp(const char*, const char*)’ has a different exception specifier [-Wpedantic]
 extern int strverscmp (const char *, const char *);
            ^~~~~~~~~~
In file included from gengtype-lex.c:21:0:
/run/current-system/profile/include/string.h:466:12: note: from previous declaration ‘int strverscmp(const char*, const char*) throw ()’
 extern int strverscmp (const char *__s1, const char *__s2)
            ^~~~~~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:679:17: warning: declaration of ‘long int strtol(const char*, char**, int)’ has a different exception specifier [-Wpedantic]
 extern long int strtol (const char *nptr,
                 ^~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:176:17: note: from previous declaration ‘long int strtol(const char*, char**, int) throw ()’
 extern long int strtol (const char *__restrict __nptr,
                 ^~~~~~
In file included from ../../gcc/system.h:691:0,
                 from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
../../gcc/../include/libiberty.h:684:26: warning: declaration of ‘long unsigned int strtoul(const char*, char**, int)’ has a different exception specifier [-Wpedantic]
 extern unsigned long int strtoul (const char *nptr,
                          ^~~~~~~
In file included from gengtype-lex.c:23:0:
/run/current-system/profile/include/stdlib.h:180:26: note: from previous declaration ‘long unsigned int strtoul(const char*, char**, int) throw ()’
 extern unsigned long int strtoul (const char *__restrict __nptr,
                          ^~~~~~~
make[2]: *** [Makefile:2671: build/gengenrtl.o] Error 1
echo timestamp > s-options
/d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l: In function ‘int yylex(const char**)’:
gengtype-lex.c:365:15: warning: this statement may fall through [-Wimplicit-fallthrough=]
/d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:118:1: note: in expansion of macro ‘YY_DO_BEFORE_ACTION’
/d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:113:1: note: here
gengtype-lex.c:365:15: warning: this statement may fall through [-Wimplicit-fallthrough=]
/d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:135:1: note: in expansion of macro ‘YY_DO_BEFORE_ACTION’
/d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:131:1: note: here
make[2]: *** [Makefile:2671: build/genhooks.o] Error 1
make[2]: *** [Makefile:2671: build/gengtype-lex.o] Error 1
make[2]: *** [Makefile:2671: build/genmodes.o] Error 1
make[2]: *** [Makefile:2671: build/gengtype-state.o] Error 1
make[2]: *** [Makefile:2671: build/gengtype.o] Error 1
rm gcc.pod
make[2]: Leaving directory '/home/user/Downloads/buildroot-2020.02.1/output/build/host-gcc-initial-8.4.0/build/gcc'
make[1]: *** [Makefile:4251: all-gcc] Error 2
make[1]: Leaving directory '/home/user/Downloads/buildroot-2020.02.1/output/build/host-gcc-initial-8.4.0/build'
make: *** [package/pkg-generic.mk:269: /home/user/Downloads/buildroot-2020.02.1/output/build/host-gcc-initial-8.4.0/.stamp_built] Error 2


[-- Attachment #3: buildroot.txt --]
[-- Type: text/plain, Size: 158 bytes --]

wget https://buildroot.org/downloads/buildroot-2020.02.1.tar.gz
tar -xf buildroot-2020.02.1.tar.gz
cd buildroot-2020.02.1
make menuconfig # save default
make

^ permalink raw reply	[flat|nested] 2+ messages in thread

* bug#41091: can't build external gcc
  2020-05-05  1:35 bug#41091: can't build external gcc Tim Komarov
@ 2020-05-06 10:21 ` raingloom
  0 siblings, 0 replies; 2+ messages in thread
From: raingloom @ 2020-05-06 10:21 UTC (permalink / raw)
  To: 41091

On Tue, 05 May 2020 04:35:31 +0300
Tim Komarov <happycorsair@yandex.ru> wrote:

> Many projects (Buildroot, coreboot, Yocto) require building a
> toolchain.
> 
> Every time it tries to build it (I've checked Buildroot and coreboot)
> it fails with the following errors:
> 
> In file included from ./bconfig.h:3:0,
>                  from ../../gcc/gengtype-lex.c:4:
> ./auto-host.h:2396:16: error: declaration does not declare anything
> [-fpermissive] #define rlim_t long
>                 ^
> In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
> ../../gcc/system.h:488:14: error: conflicting declaration of C
> function ‘void* sbrk(int)’ extern void *sbrk (int);
> 
> In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
> ../../gcc/system.h:496:14: error: ambiguating new declaration of
> ‘char* strstr(const char*, const char*)’ extern char *strstr (const
> char *, const char *);
> 
> In file included from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:0:
> ../../gcc/system.h:540:20: error: conflicting declaration of C
> function ‘const char* strsignal(int)’ extern const char *strsignal
> (int);
> 
> In file included from ../../gcc/system.h:691:0,
>                  from /d/gcc-8.4.0/gcc-8.4.0/gcc/gengtype-lex.l:30:
> ../../gcc/../include/libiberty.h:112:14: error: ambiguating new
> declaration of ‘char* basename(const char*)’ extern char *basename
> (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);
> 
> Switching gcc versions doesn't help.
> 
> One can find a simple way to reproduce in buildroot.txt,
> build-gcc.log provides a complete log.
> 
> Looking forward for your help. Thanks!
> 
> -- 
> Best Regards,
> Timofey Komarov

What I'm trying to do (currently with devkitPro and EDK2) is to just
create a Guix package for the patched GCC toolchain and either use that
directly (devkitPro) or convince the build scripts to use the packaged
toolchain (EDK2).

I'm not sure if it will work out, but in the long run, it seems like
the better choice. That is, if it will work at all.




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-05-06 10:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-05  1:35 bug#41091: can't build external gcc Tim Komarov
2020-05-06 10:21 ` raingloom

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).