Version 15 (modified by 10 months ago) ( diff ) | ,
---|
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 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 <ucontext.h>
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.)