Re: gcc12 will not build with multiple jobs

[email protected] Mon, 12 Dec 2022 15:10:49 -0600
Newsgroups gmane.os.apple.fink.devel
Message-ID <[email protected]>
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


_______________________________________________
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