[Buildroot] [PATCH 1/1] kconfig/lxdialog: fix check() with GCC14
Petr Vorel
petr.vorel at gmail.com
Wed Apr 3 16:28:27 UTC 2024
Hi Robert,
> GCC14 now treats implicit int types as error so when check() from
> check-lxdialog.sh is called to check whether we can link against ncurses
> it will fail silently and the help text indicating to install ncurses is
> printed.
> However, this is not due to missing ncurses but once the stderr redirect
> to /dev/null is removed we can see the root cause:
> <stdin>:2:1: error: return type defaults to ‘int’ [-Wimplicit-int]
> So, in order for menuconfig to work with GCC14 lets just specify the
> return type of main() as int.
Good catch. Not only gcc-14, but also clang-16 fails due -Wimplicit-int.
(clang-14 was ok).
Reviewed-by: Petr Vorel <petr.vorel at gmail.com>
Tested-by: Petr Vorel <petr.vorel at gmail.com>
Kind regards,
Petr
> Signed-off-by: Robert Marko <robimarko at gmail.com>
> ---
> support/kconfig/lxdialog/check-lxdialog.sh | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> diff --git a/support/kconfig/lxdialog/check-lxdialog.sh b/support/kconfig/lxdialog/check-lxdialog.sh
> index 16cd9a3186..27d6c30a57 100755
> --- a/support/kconfig/lxdialog/check-lxdialog.sh
> +++ b/support/kconfig/lxdialog/check-lxdialog.sh
> @@ -48,7 +48,7 @@ trap "rm -f $tmp" 0 1 2 3 15
> check() {
> $cc -x c - -o $tmp 2>/dev/null <<'EOF'
> #include CURSES_LOC
> -main() {}
> +int main() {}
> EOF
> if [ $? != 0 ]; then
> echo " *** Unable to find the ncurses libraries or the" 1>&2
More information about the buildroot
mailing list