= Some packages may need an adaption with GCC 14 Reference: https://gitlab.com/fweimer-rh/fedora-modernc Serious issues marked as **bold**. == Expect (5.45.4) **FTBFS** with `configure: error: could not find source file 'pty_.c'`. Fedora uses [https://src.fedoraproject.org/rpms/expect/blob/rawhide/f/expect-configure-c99.patch a patch], but the patch needs to run autoconf. For LFS we can just pass `CC="gcc -std=gnu89"` to configure. == Libxcrypt (4.4.36) Fails to probe the `` header: https://github.com/besser82/libxcrypt/pull/178 It causes `test/explicit-bzero` skipped. Not a serious issue and we can ignore. == Bash (5.2.21 + upstream_fixes-1.patch) === a. Wrong probing of dup2 https://lists.gnu.org/archive/html/bug-bash/2023-02/msg00000.html Not really harming, the probing result still happens to be correct. === b. Wrong probing of strtold https://lists.gnu.org/archive/html/bug-bash/2023-11/msg00104.html **Real issue.** Causing multiple test failures (for e.g. "printf %.4f 1" outputs "0.0000"). Workaround: `bash_cv_strtold_broken=no` (for safety better include it in chapter 6 too, besides chapter 8). == Libtool (2.4.7) https://lists.gnu.org/archive/html/libtool-patches/2023-01/msg00000.html "107: lt_dlopen archive" skipped. Not a serious issue. == Inetutils (2.5) **FTBFS**: {{{ telnet.c: In function 'init_term': telnet.c:767:9: error: implicit declaration of function 'tgetent'; did you mean 'getenv'? [-Wimplicit-function-declaration] 767 | err = tgetent (termbuf, tname); | ^~~~~~~ | getenv }}} It seems an oversight in the book instead of an upstream issue. We need to pass `--with-ncurses-include-dir=/usr/include` to tell where to find the ncurses headers. It just happens to work without it in GCC 13 or earlier. == Automake (1.16.5) 52 tests fail. They seem test-suite-only issue (see patches in https://src.fedoraproject.org/rpms/automake/tree/182bffe0). == Elfutils (0.190) https://sourceware.org/pipermail/elfutils-devel/2023q4/006750.html `make check` fail early so **impossible to test**: {{{ elfstrmerge.c: In function 'main': elfstrmerge.c:450:32: error: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args] 450 | newscnbufs = calloc (sizeof (void *), newshnums); | ^~~~ elfstrmerge.c:450:32: note: earlier argument should specify number of elements, later size of each element }}} Fix: `sed '/calloc/s/(\(.*\), \(.*\))/(\2, \1)/' -i tests/elfstrmerge.c` == Libffi (3.4.4) **FTBFS**: {{{ ../src/tramp.c: In function 'ffi_tramp_get_temp_file': ../src/tramp.c:262:22: error: implicit declaration of function 'open_temp_exec_file' [-Wimplicit-function-declaration] 262 | tramp_globals.fd = open_temp_exec_file (); | ^~~~~~~~~~~~~~~~~~~ }}} Patch: https://github.com/libffi/libffi/commit/ce077e5565366171aa1b4438749b0922fce887a4.diff (We may work around with `CC="gcc -std=gnu89"` but I think it's a bad idea.)