Re: gcc12 will not build with multiple jobs
[email protected] Tue, 13 Dec 2022 04:26:10 -0600
| Newsgroups | gmane.os.apple.fink.devel |
|---|---|
| Organization | Snaggled Works |
| Message-ID | <[email protected]> |
On 12/12/22 3:28 PM, Scott Hannahs via Fink-devel wrote: > > >> On Dec 12, 2022, at 16:10, [email protected] wrote: >> >> On 2022-12-12 14:58, Scott Hannahs via Fink-devel wrote: >>> Ok, weirdness. I could not get it to reproduce on my home machine >>> after building with single job, and it has build correctly with >>> multiple jobs enabled about 3 times after that. I have a similar >>> machine at work (ie Monterey 12.6.1) and I tried to install gcc12 on >>> that system. This gave a different error. My Xcode and command line >>> versions agree. >>>> checking for the correct version of gmp.h... yes >>>> checking for the correct version of mpfr.h... yes >>>> checking for the correct version of mpc.h... no >>>> configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and >>>> MPC 0.8.0+. >>>> Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify >>>> their locations. Source code for these libraries can be found at >>>> their respective hosting sites as well as at >>>> https://gcc.gnu.org/pub/gcc/infrastructure/. See also >>>> http://gcc.gnu.org/install/prerequisites.html for additional info. >>>> If >>>> you obtained GMP, MPFR and/or MPC from a vendor distribution >>>> package, >>>> make sure that you have installed both the libraries and the header >>>> files. They may be located in separate packages. >>>> ### execution of /tmp/fink.SqDfX failed, exit code 1 >>>> ### execution of /tmp/fink.3lPCk failed, exit code 1 >>>> ... >>>> Also include the following system information: >>>> Package manager version: 0.45.99.git >>>> Distribution version: selfupdate-git Mon Dec 12 10:03:17 2022, 12.0, >>>> x86_64 >>>> Trees: local/injected local/main stable/main >>>> Xcode.app: 14.1 >>>> Xcode command-line tools: 14.1.0.0.1.1666437224 >>>> Max. Fink build jobs: 12 >>> Which seems to imply that my version of MPC < 0.8 or completely >>> missing. >>> BUT, fink reports that I have libmpc3 installed. Should it be >>> libmpc2?? Is the dependency in gcc12 wrong? It claims dependency on >>> libmpc3 >= 1.0.3 which should be satisfied. >>>> % fink list libmpc2 libmpc3 >>>> Information about 13595 packages read in 1 seconds. >>>> libmpc2 0.9-2 >>>> Multi-precision complex lib >>>> libmpc2-shlibs 0.9-2 >>>> Multi-precision complex lib >>>> i libmpc3 1.3.0-1 >>>> Multi-precision complex lib >>>> i libmpc3-shlibs 1.3.0-1 >>>> Multi-precision complex lib >>> The reference file has the correct version in it as expected: >>> "/opt/sw/include/mpc.h" >>>> /* Define MPC version number */ >>>> #define MPC_VERSION_MAJOR 1 >>>> #define MPC_VERSION_MINOR 3 >>>> #define MPC_VERSION_PATCHLEVEL 0 >>>> #define MPC_VERSION_STRING "1.3.0" >> >> gcc12 has an explicit Depends on `libmpc3 (>= 1.0.3-1)`. Can you look at config.log in the build directory and see what exactly failed when checking for `mpc.h`? >> >> libmpc3 just got updated from 1.2.1 to 1.3.0. Upstream claims that 1.3.0 is backwards compatible with 1.2.1, but I wonder if the gcc12 code is expecting something else that got changed. >> >> I don't know what was going on with the multi-job issue because the gccNN build system should be multi-thread safe. It's worked for me with 4 and 8 CPU machines for a long time, and I know others have it working too. >> >> Hanspeter > > > It seems that there is an error (or undefined type FILE) in that header file? The config.log file is in the darwin_objdir directory. > > >> configure:8209: checking for the correct version of mpc.h >> configure:8226: gcc -c -g -O2 -I/opt/sw/include -I/opt/sw/include conftest.c >&5 >> In file included from conftest.c:10: >> /opt/sw/include/mpc.h:287:35: error: unknown type name 'FILE' >> __MPC_DECLSPEC void mpcr_out_str (FILE *f, mpcr_srcptr r); >> ^ >> 1 error generated. >> configure:8226: $? = 1 >> configure: failed program was: >> | /* confdefs.h */ >> | #define PACKAGE_NAME "" >> | #define PACKAGE_TARNAME "" >> | #define PACKAGE_VERSION "" >> | #define PACKAGE_STRING "" >> | #define PACKAGE_BUGREPORT "" >> | #define PACKAGE_URL "" >> | #define LT_OBJDIR ".libs/" >> | /* end confdefs.h. */ >> | #include <mpc.h> >> | int >> | main () >> | { >> | >> | #if MPC_VERSION < MPC_VERSION_NUM(0,8,0) >> | choke me >> | #endif >> | >> | ; >> | return 0; >> | } >> configure:8251: result: no >> configure:8309: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+. >> Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify >> their locations. Source code for these libraries can be found at >> their respective hosting sites as well as at > > > At least to me it appears that the correct flag is passed to the compiler that has the mpc libraries in the path. That should point the system to /opt/sw/include/mpc.h > >> It was created by configure, which was >> generated by GNU Autoconf 2.69. Invocation command line was >> >> $ ../gcc-12.2.0/configure --prefix=/opt/sw --prefix=/opt/sw/lib/gcc12 --mandir=/opt/sw/share/man --infodir=/opt/sw/lib/gcc12/info --enable-languages=c,c++,fortran,lto,objc,obj-c++ --with-gmp=/opt/sw --with-libiconv-prefix=/opt/sw --wi >> th-isl=/opt/sw --with-mpc=/opt/sw --with-system-zlib --program-suffix=-fsf-12 --disable-multilib --enable-stage1-checking --with-sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --wi >> th-pkgversion=Fink gcc12 12.2.0-2 --with-bugurl=https://github.com/fink/fink-distributions/issues It's a problem with libmpc3-1.3.0. Building gcc11 and gcc12 fail if I have it installed, but work if I have libmpc3-1.2.1 installed. Upstream has a fix: https://gitlab.inria.fr/mpc/mpc/-/commit/e944aa454e60cbff8ab4e8c70dd974083398378f I've pushed an update to libmpc3 with that fix and gccNN now build. Hanspeter -- 92% of all statistics are made up. _______________________________________________ Fink-devel mailing list [email protected] List archive: https://sourceforge.net/p/fink/mailman/fink-devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel