From 2881fc0a6205d593512458c24f3b681d12921005 Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Mon, 5 May 2025 21:48:45 +0200 Subject: Configuration: basic software build with host GCC 15.1 Summary: this will not affect already built/configured projects, only improving the portability of future builds. Until this commit, no specific C standard version was given during the build of Basic software (which use the host's c compiler, culminating in the building of GCC within Maneage). On the other hand, GCC 15.1 was recentely released and made available on some operating systems. GCC 15.1 has made C23 its standard C version (from C17), as a result, some of the basic software crashed and didn't allow Maneage to built on those operating systems. With this commit, the '-std=c17' flag has been added to software that crashed when the host GCC was 15.1. Also, they have been grouped with a description of this problem in 'versions.conf' so we check the need for this option in future version updates. In parallel, some minor edits/clarifications were made in the two 'README-apptainer.md' and 'README-docker.md' files to be more useful. --- reproduce/software/config/versions.conf | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'reproduce/software/config') diff --git a/reproduce/software/config/versions.conf b/reproduce/software/config/versions.conf index 9c82c8d..166e8ff 100644 --- a/reproduce/software/config/versions.conf +++ b/reproduce/software/config/versions.conf @@ -17,7 +17,6 @@ # -------------------------------------------------------------- # # CLASS:BASIC (important identifier for 'awk'; don't modify this line) -bash-version = 5.2.37 binutils-version = 2.43.1 bison-version = 3.8.2 coreutils-version = 9.6 @@ -42,15 +41,12 @@ libtool-version = 2.5.4 libunistring-version = 1.3 libxml2-version = 2.13.5 lzip-version = 1.25 -m4-version = 1.4.19 make-version = 4.4.1 mpc-version = 1.3.1 mpfr-version = 4.2.1 nano-version = 8.3 -ncurses-version = 6.5 openssl-version = 3.4.0 perl-version = 5.40.1 -pkgconfig-version = 0.29.2 podlators-version = 6.0.2 readline-version = 8.2.13 sed-version = 4.9 @@ -90,6 +86,21 @@ certpem-version = 2025-02-10 # supported. patchelf-version = 0.13 +# Not working with C23 +# -------------------- +# +# As of GCC 15.1, the default C standard has been changed from C17 to C23 +# and the following software cannot be built with C23. So we have added +# '-std=c17' to the CFLAGS environment variable in their build rules. After +# updating their version (and if you have GCC 15.1 or later) first remove +# '-std=c17' and then try the build. If it works, move the software back up +# to the main list before the commit. +ncurses-version = 6.5 +bash-version = 5.2.37 +m4-version = 1.4.19 +pkgconfig-version = 0.29.2 + + -- cgit v1.2.1