David Haller <[email protected]> writes:

> Hello,
>
> On Tue, 29 Dec 2015, lee wrote:
>>Andrew Savchenko <[email protected]> writes:
>>> There will be no 5.3.1 likely. Numeration scheme is changed from 5.x
>>> series: what was middle version is now major, what was minor is now
>>> middle. So 5.3 is a patch version of 5.0 the same as 4.9.3 is a
>>> patch version of 4.9.0.
>>
>>What do you currently get as default when you update, and can you easily
>>go back to a previous version, or have several versions installed and
>>switch between them?
>
> I'd guess 4.9.3. And yes and yes.
>
> # eix sys-devel/gcc
> [I] sys-devel/gcc
>      Available versions:  
>      (2.95.3) ~2.95.3-r10^s
>      (3.3.6) (~)3.3.6-r1^s
>      (3.4.6) 3.4.6-r2^s
>      (4.0.4) **4.0.4^s
>      (4.1.2) 4.1.2^s
>      (4.2.4) (~)4.2.4-r1^s
>      (4.3.6) 4.3.6-r1^s
>      (4.4.7) 4.4.7^s
>      (4.5.4) 4.5.4^s
>      (4.6.4) 4.6.4^s
>      (4.7)  4.7.4^s
>      (4.8)  (~)4.8.0^s (~)4.8.1-r1^s (~)4.8.2^s 4.8.3^s 4.8.4^s 4.8.5^s
>      (4.9)  ~*4.9.0^s ~*4.9.1^s (~)4.9.2^s 4.9.3^s{tbz2}
>      (5)    **5.1.0^s **5.2.0^s (~)5.3.0^s{tbz2}
> [..]
>      Installed versions:  4.9.3(4.9)^s{tbz2}[..]
>                           5.3.0(5)^s{tbz2}[..]
> [..]
>
> # gcc-config -l
>  [1] x86_64-pc-linux-gnu-4.9.3 *
>  [2] x86_64-pc-linux-gnu-5.3.0
>
> Basically, you can install one of each slot, i.e. the first column in
> () of the eix output. From (2.95.3) to (5). And switch as you like.
>
> As 4.9.3 is marked stable, I guess that's what'd you get per default.

4.8.5

I'd have to run emerge --sync to know about more recent versions.  How
is that supposed to be used, btw?  I only run that when I do want to
update everything.  Now if I didn't want to update anything but gcc,
could I run emerge --sync and install gcc 5.x without having trouble
with anything else I might install before actually updating everything?
So if I'd never explicitly update everything but run emerge --sync
frequently, things would be updated over time, occasionally?

> Stuff compiled with older gcc's should run with newer libgcc*[0], but
> stuff compililed with a newer gcc might not run with the older
> libgcc*. Same goes, with more problems IIRC, for libstdc++.
> So beware of that. Apart from that? I'm not aware of problems.

Uhm ... So I might break the system by switching between compiler
versions?  I have an application which I would like to compile with gcc
5.x just to see if that's even possible.  I could switch, try it, and
then switch back.

> BTW: why is gcc not also handled via eselect? Even if that'd just
> call gcc-config?

What about ccache?  How's that handled when you have multiple versions
of gcc installed?

> HTH,
> -dnh
>
> [0] e.g. old Loki games, probably compiled with 2.95.x or even older
>     still run fine on a system built with gcc-4.6

If they were 64bit ...  Too bad that there basically aren't any games
anymore.

Reply via email to