Ayush Yadav created an issue: 
https://gitlab.rtems.org/rtems/tools/rtems-source-builder/-/issues/174



## Summary

The `texinfo-7.0.3` package fails to build on newer toolchains (GCC 16). The 
issue stems from a conflict in `system.h` where `strerror` is declared with an 
empty parameter list (`extern char *strerror ();`), which conflicts with the 
standard library's `string.h` declaration (`extern char *strerror (int);`).

Modern GCC versions now treat this prototype mismatch as a hard error rather 
than a warning.

I tried resolving the errors by manually packaging `dtc` from upstream and 
updating the hash, which resulted into build process proceeding further until 
it hits `texinfo` which suffers the same fate due to newer GCC version. I 
suspect other packages might be affected as well. 

**Environment:**

* **OS:** Fedora 44
* **Compiler:** GCC 16

#### Error Log

```
../../texinfo-7.0.3/system.h:69:14: error: conflicting types for 'strerror'; 
have 'char *(void)'
   69 | extern char *strerror ();
      |              ^~~~~~~~
In file included from ../gnulib/lib/string.h:41,
                 from ../../texinfo-7.0.3/system.h:34:
/usr/include/string.h:451:14: note: previous declaration of 'strerror' with 
type 'char *(int)'
  451 | extern char *strerror (int __errnum) __THROW;
      |              ^~~~~~~~
../../texinfo-7.0.3/install-info/install-info.c: In function 'pfatal_with_name':
../../texinfo-7.0.3/install-info/install-info.c:293:26: error: too many 
arguments to function 'strerror'; expected 0, have 1
  293 |   fatal (_("%s for %s"), strerror (errno), name);
```

## Steps to reproduce

1. ../source-builder/sb-set-builder --log log.txt --prefix=/opt/rtems/7 
7/rtems-sparc #from rsb/rtems directory

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/tools/rtems-source-builder/-/issues/174
You're receiving this email because of your account on gitlab.rtems.org.


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to