From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com [IPv6:2a00:1450:4864:20::435]) by sourceware.org (Postfix) with ESMTPS id AC9BB395B44A for ; Fri, 13 May 2022 22:50:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org AC9BB395B44A Received: by mail-wr1-x435.google.com with SMTP id e29so3481722wrc.11 for ; Fri, 13 May 2022 15:50:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=NSP/y0SR4boJnq4jhBdpuk50oBq2s9Co8ZyBA7FoyJA=; b=KC/Qly92Bmr7aW3dpYzSV2gVIJCzxFr9j3em/lorrXH60SETeaDiUgJzttvKntFaIf r65JDWs7cjKaiWbrdj2H5d3rBZGaivBJLxhjtWiCmEDTM0OiE2BruXZ3WrtxRiAPjqKG njxKbQuq5fE7f/qHLeplpf/WtdWN2WfvrhW5eCSq5cSsrve//k6p7bVZMNU2XSe6O5Mv lo30T1H3N6NNBObPFrH56NugfXKaCkAG5bn0TiBwgoZ02rmm2cpKISwFOioyeTD4alSg khY8hDTsG8vAaDu5dgp7WnGolWw/nUmbdEi5AdYHS14IF1Vmqo1VUzQWZ7S/hh2m8OeK jtyA== X-Gm-Message-State: AOAM532ARDZ5z7PEJuGzupxtgCrdkKbllBgzELXUZ+VeQBiNkIjSlpji wOTK4suTVPCS+ou3XHlE6vz06aPKmC9OKbTbTbiorecAKAc= X-Google-Smtp-Source: ABdhPJy5uYFsEN4vyWWx01dU43JuRUr5i/5/9xXaQh8a9UIBUNr3VBekFusOPGQOjGNCPmcn2OeVRAXyCX4n+qVeTko= X-Received: by 2002:adf:dc91:0:b0:20c:cb51:4160 with SMTP id r17-20020adfdc91000000b0020ccb514160mr5641830wrj.568.1652482208263; Fri, 13 May 2022 15:50:08 -0700 (PDT) MIME-Version: 1.0 References: <7f1f1a2f-6c9f-d3ad-8aa1-499c87eb8caf@blastwave.org> <05fc1487-9080-5822-4e32-81cf49d13961@blastwave.org> <91d0b89c-2001-1b2c-cbd7-d9b390c9ee8b@blastwave.org> In-Reply-To: From: Jonathan Wakely Date: Fri, 13 May 2022 23:49:57 +0100 Message-ID: Subject: Re: bootstrap fails on Debian ppc64 with fatal error: bits/libc-header-start.h: No such file or directory To: Dennis Clarke Cc: gcc-help Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 May 2022 22:50:12 -0000 On Fri, 13 May 2022 at 23:06, Dennis Clarke wrote: > > On 5/13/22 17:03, Jonathan Wakely wrote: > > On Fri, 13 May 2022 at 21:55, Dennis Clarke wrote: > >> However "configure" always runs just fine regardless of much of anything > >> other than the mysterious --with-gmp and mpfr and mpc options. If I do > >> not provide those *and* also have the sources extracted into the gcc > >> source tree then I get a complaint and configure fails. If I do provide > >> those *and* yes the libs have been prebuilt *and* the sources are in the > >> gcc source tree then I get no complaint and the compile then rebuilds > >> them anyways. No idea why. [1] > > > > Honestly, I find that hard to believe. > > Me too! > > > > > One or the other is needed. If you need both, I think you're the only > > person in the world who needs that. > > > > Not bloody likely right? I am looking into that and I think the real > issue is that the versions wanted in the source tree must be the same as > the stuff dragging in by the script kicker download_prerequisites : > > https://gcc.gnu.org/install/prerequisites.html > > The in-tree build is only supported with the GMP version that > download_prerequisites installs. Right, you should be using that script. https://gcc.gnu.org/wiki/InstallingGCC Or (as that page says) just install the debian packages and stop installing them by hand. > However what do I know? There is another page that says do a bootstrap4 > for extra spice and flavour in your result. That doesn't fly. Well stop trying to do weird stuff and just Keep It Simple. > > > >> enceladus$ > >> enceladus$ ls -lapb --full-time ./stage1-gcc/xgcc ./prev-gcc/xgcc ./gcc/xgcc > >> -rwxr-xr-x 1 dclarke devl 5981584 2022-05-13 20:17:17.398378278 +0000 > >> ./gcc/xgcc > >> -rwxr-xr-x 1 dclarke devl 2077720 2022-05-13 19:34:28.401954705 +0000 > >> ./prev-gcc/xgcc > >> -rwxr-xr-x 1 dclarke devl 5145688 2022-05-13 17:18:49.299039174 +0000 > >> ./stage1-gcc/xgcc > >> enceladus$ > >> > >> No stage4 result but whatever :\ we didn't want that anyways ? > > > > Good, there should only be three stages. > > > > I gather that now. Maybe the page that says "bootstrap4" could have a > line like "we don't know if this works" or words to that effect. :-\ > > https://gcc.gnu.org/install/build.html > > > > > >> 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+. > > > > Which version of mpc have you got in the GCC source tree, and how did > > you add it there? > > > > Whoa ... hold on a sec. I generally never use the little magic script > download_prerequisites. I had better check that : You should use it. It makes everything much simpler than you're making it. > > hydra# head ./contrib/download_prerequisites > #! /bin/sh > #! -*- coding:utf-8; mode:shell-script; -*- > > # Download some prerequisites needed by GCC. > # Run this from the top level of the GCC source tree and the GCC build > will do > # the right thing. Run it with the `--help` option for more information. > # > # (C) 2010-2021 Free Software Foundation > # > > Sure. Right. Let's just see : > > hydra# ./contrib/download_prerequisites --help > wget: not found > usage: download_prerequisites [OPTION...] > Okay so it needs 'wget'. Fine. Easy to fix that. It uses curl instead if wget is not found. Most people have one or the other already installed. > Same stuff I use however the mpfr *needs* a patch. Eh? Why? > > > hydra# ls -lap /opt/bw/src > total 150124 > drwxrwxr-x 2 root devl 8 May 13 21:37 ./ > drwxr-xr-x 4 root wheel 4 May 13 21:32 ../ > -rw-r--r-- 1 dclarke devl 145089078 May 13 21:31 gcc-12.1.0.tar.gz > -rw-r--r-- 1 dclarke devl 2493916 May 13 21:34 gmp-6.2.1.tar.bz2 > -rw-r--r-- 1 dclarke devl 2757038 May 13 21:37 isl-0.24.tar.gz > -rw-r--r-- 1 dclarke devl 838731 May 13 21:36 mpc-1.2.1.tar.gz > -rw-r--r-- 1 dclarke devl 2357295 May 13 21:35 mpfr-4.1.0.tar.gz > -rw-r--r-- 1 dclarke devl 104646 May 13 21:35 mpfr-4.1.0_patch > hydra# > > > > What does 'ls -d ../gcc-12.1.0/mpc*' show? > > > > hydra# pwd > /opt/bw/build/gcc-12.1.0 > hydra# ls -ladb mpc* > lrwxr-xr-x 1 root 1000 12 May 13 21:53 mpc -> ./mpc-1.2.1/ > drwxr-xr-x 8 admsys 998 22 Oct 20 2020 mpc-1.2.1 > -rw-r--r-- 1 root 1000 838731 Oct 23 2020 mpc-1.2.1.tar.gz > hydra# > hydra# ls -ladb gmp* > lrwxr-xr-x 1 root 1000 12 May 13 21:53 gmp -> ./gmp-6.2.1/ > drwxrwxr-x 15 1006 1006 75 Nov 14 2020 gmp-6.2.1 > -rw-r--r-- 1 root 1000 2493916 Nov 14 2020 gmp-6.2.1.tar.bz2 > hydra# > hydra# ls -ladb mpfr* > lrwxr-xr-x 1 root 1000 13 May 13 21:53 mpfr -> ./mpfr-4.1.0/ > drwxr-xr-x 9 1000 1000 36 Jul 10 2020 mpfr-4.1.0 > -rw-r--r-- 1 root 1000 1747243 Jul 10 2020 mpfr-4.1.0.tar.bz2 > hydra# > hydra# ls -ladb isl* > lrwxr-xr-x 1 root 1000 11 May 13 21:53 isl -> ./isl-0.24/ > drwxrwxr-x 11 1000 1000 323 May 1 2021 isl-0.24 > -rw-r--r-- 1 root 1000 2261594 May 1 2021 isl-0.24.tar.bz2 > hydra# > > That is precisely what I have in every machine where I try this process. But it wouldn't complain about the mpc version if that was the case. > Unless the configure process goes looking for the left over tar files? No. > I must have made a mistake somewhere. > > # cd /opt/bw/build/gcc-12.1.0 > # ls -ladb gmp* mpfr* mpc* > lrwxrwxrwx 1 root root 9 May 6 17:04 gmp -> gmp-6.2.1 > drwxrwxr-x 15 1006 1006 4096 Nov 14 2020 gmp-6.2.1 > lrwxrwxrwx 1 root root 9 May 6 17:04 mpc -> mpc-1.2.1 > drwxr-xr-x 8 1001 998 4096 Oct 20 2020 mpc-1.2.1 > lrwxrwxrwx 1 root root 10 May 6 17:04 mpfr -> mpfr-4.1.0 > drwxr-xr-x 9 linaro linaro 4096 Jul 10 2020 mpfr-4.1.0 > # > > Let me dig around a bit and see what is going on. > > > What does config.log (in the build dir) say before it fails? It should > > tell you where it found mpc.h and which version it found. > > I deleted the failed build dir(s) to save on a bit of space. I would also delete the source tree and untar it again, in case you've fouled it up somehow. And then run contrib/download_prerequisites again.