Andreas K. Huettel posted on Mon, 09 Oct 2017 22:58:22 +0200 as excerpted:

> Please consider switching from your current 13.0 profile to the
> corresponding 17.0 profile soon after GCC-6.4.0 has been stabilized on
> your architecture. The 13.0 profiles will be deprecated and removed in
> the near future.
> 
> Switching involves the following steps:
> If not already done,
> * Use gcc-config to select gcc-6.4.0 or later as system compiler
> * Re-source /etc/profile:
>     . /etc/profile
> * Re-emerge libtool Then,
> * Select the new profile with eselect
> * Re-emerge, in this sequence, gcc, binutils, and glibc
>     emerge -1 sys-devel/gcc:6.4.0
>     emerge -1 sys-devel/binutils
>     emerge -1 sys-libs/glibc
> * Rebuild your entire system
>     emerge -e world
> 
> If you do not follow these steps you may get spurious build failures
> when the linker tries unsuccessfully to combine non-PIE and PIE code.

One thing isn't clear here.  Is this sequence necessary due to the 
profile switch itself, because the /profile/ enables PIE by default, or 
is it gcc-6.4+ that enables PIE, and the profile simply forces the PIE 
default by forcing gcc-6.4+?

The answer makes a big difference to those already on gcc-6.4+ and who 
presumably already did an empty-tree rebuild of @world when upgrading to 
it, but not yet on the new profile.  Do they have to do all that again 
when they switch profiles, or is that a bridge they've already crossed 
with the gcc upgrade?

Either way, making the answer to that explicit should be useful, avoiding 
either an unnecessary full rebuild, or avoiding the problems because the 
news item wasn't clear and people already on gcc-6.4+ thought the 
procedure didn't apply to them.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman


Reply via email to