Re: bootstrap fails on Debian ppc64 with fatal error: bits/libc-header-start.h: No such file or directory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 13 May 2022 at 23:06, Dennis Clarke <dclarke@xxxxxxxxxxxxx> 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.



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux