Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 650544 - [standalone] Eliminate gcc-4.7 in the bootstrap and make c++ compiler a prerequisite
Summary: [standalone] Eliminate gcc-4.7 in the bootstrap and make c++ compiler a prere...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-15 07:10 UTC by Benda Xu
Modified: 2021-01-08 09:20 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Benda Xu gentoo-dev 2018-03-15 07:10:36 UTC
Historically, when gcc-4.8 started to require c++ to build, we intended to support the systems without a c++ compiler.  Therefore, gcc-4.7 is built if necessary in stage2.

But, glibc-2.26 has been released[1] to require at least gcc-4.9 to build.  This breaks stage3 bootstrap.

It's time to stop worrying about c++ and require users to install c++ compiler before calling bootstrap-prefix.sh.

1. https://sourceware.org/ml/libc-alpha/2017-08/msg00010.html

Reproducible: Always
Comment 1 Fabian Groffen gentoo-dev 2018-03-15 18:01:07 UTC
ehhh, well, there are some platforms IMO that don't have this, so perhaps we better check if we have a (working) c++ compiler instead?
Comment 2 Benda Xu gentoo-dev 2018-03-16 00:10:31 UTC
(In reply to Fabian Groffen from comment #1)
> ehhh, well, there are some platforms IMO that don't have this, so perhaps we
> better check if we have a (working) c++ compiler instead?

And provide another script bootstrap-c++.sh?

Or I could make it prefix-standalone specific, because glibc-2.26 is only used there.
Comment 3 Michael Haubenwallner (RETIRED) gentoo-dev 2018-03-16 08:28:05 UTC
(In reply to Benda Xu from comment #2)
> (In reply to Fabian Groffen from comment #1)
> > ehhh, well, there are some platforms IMO that don't have this, so perhaps we
> > better check if we have a (working) c++ compiler instead?
> 
> And provide another script bootstrap-c++.sh?

Which (almost) easily could be embedded into main bootstrap script as well.

> Or I could make it prefix-standalone specific, because glibc-2.26 is only
> used there.

What's wrong with building gcc-4.7 in stage1 if necessary?
Comment 4 Benda Xu gentoo-dev 2018-03-16 21:35:33 UTC
Hi Michael,

(In reply to Michael Haubenwallner from comment #3)
> (In reply to Benda Xu from comment #2)
> > (In reply to Fabian Groffen from comment #1)
> > > ehhh, well, there are some platforms IMO that don't have this, so perhaps we
> > > better check if we have a (working) c++ compiler instead?
> > 
> > And provide another script bootstrap-c++.sh?
> 
> Which (almost) easily could be embedded into main bootstrap script as well.
> 
> > Or I could make it prefix-standalone specific, because glibc-2.26 is only
> > used there.
> 
> What's wrong with building gcc-4.7 in stage1 if necessary?

s/stage1/stage2/

Are you implying to build gcc-4.7 when the host does not have c++ and build another newer gcc in stage2?

Benda
Comment 5 Michael Haubenwallner (RETIRED) gentoo-dev 2018-03-19 08:24:01 UTC
(In reply to Benda Xu from comment #4)
> (In reply to Michael Haubenwallner from comment #3)
> > (In reply to Benda Xu from comment #2)
> > > (In reply to Fabian Groffen from comment #1)
> > > > better check if we have a (working) c++ compiler instead?
> > > 
> > > And provide another script bootstrap-c++.sh?
> > 
> > Which (almost) easily could be embedded into main bootstrap script as well.
> > 
> > > Or I could make it prefix-standalone specific, because glibc-2.26 is only
> > > used there.
> > 
> > What's wrong with building gcc-4.7 in stage1 if necessary?
> 
> s/stage1/stage2/

Wherever it would make sense.

> Are you implying to build gcc-4.7 when the host does not have c++ and build
> another newer gcc in stage2?

Exactly. Much like we build GNU make first if we don't find GNU make for example.
Doesn't feel so much different than providing some bootstrap-c++.sh at all, no?
Comment 6 Fabian Groffen gentoo-dev 2018-03-19 11:44:35 UTC
(In reply to Michael Haubenwallner from comment #3)
> What's wrong with building gcc-4.7 in stage1 if necessary?

+1
Comment 7 Fabian Groffen gentoo-dev 2018-05-31 15:03:32 UTC
Right now we bootstrap straight to gcc-7, and that fails too because it believes /lib/cpp isn't sane (Ubuntu).  So what is the status supposed to be here?
Comment 8 Fabian Groffen gentoo-dev 2021-01-08 09:20:21 UTC
we go straight to GCC 10 if we can currently