1 |
måndag 9 oktober 2017 kl. 22:58:22 CEST skrev Andreas K. Huettel: |
2 |
> ===================================== |
3 |
> Title: New 17.0 profiles in the Gentoo repository |
4 |
> Author: Andreas K. Hüttel <dilfridge@g.o> |
5 |
> Posted: xxxxxxx |
6 |
> Revision: 1 |
7 |
> News-Item-Format: 2.0 |
8 |
> Display-If-Installed: >=sys-devel/gcc-6.4.0 |
9 |
> |
10 |
> We have just added a new set of profiles with release version 17.0 |
11 |
> to the Gentoo repository. These bring tree changes: |
12 |
> 1) The default C++ language version for applications is now C++14. |
13 |
> This change is mostly relevant to Gentoo developers. It also |
14 |
> means, however, that compilers earlier than GCC 6 are masked |
15 |
> and not supported for use as a system compiler anymore. Feel |
16 |
> free to unmask them if you need them for specific applications. |
17 |
> 2) Where supported, GCC will now build position-independent |
18 |
> executables (PIE) by default. This improves the overall |
19 |
> security fingerprint. The switch from non-PIE to PIE binaries, |
20 |
> however, requires some steps by users, as detailed below. |
21 |
> |
22 |
3) Hardened profiles will be moved to the 17.0 profile as sub profile. |
23 |
|
24 |
> Please consider switching from your current 13.0 profile to the |
25 |
> corresponding 17.0 profile soon after GCC-6.4.0 has been |
26 |
> stabilized on your architecture. The 13.0 profiles will be deprecated |
27 |
> and removed in the near future. |
28 |
> |
29 |
> Switching involves the following steps: |
30 |
> If not already done, |
31 |
> * Use gcc-config to select gcc-6.4.0 or later as system compiler |
32 |
> * Re-source /etc/profile: |
33 |
> . /etc/profile |
34 |
> * Re-emerge libtool |
35 |
> Then, |
36 |
> * Select the new profile with eselect |
37 |
> * Re-emerge, in this sequence, gcc, binutils, and glibc |
38 |
> emerge -1 sys-devel/gcc:6.4.0 |
39 |
> emerge -1 sys-devel/binutils |
40 |
> emerge -1 sys-libs/glibc |
41 |
> * Rebuild your entire system |
42 |
> emerge -e world |
43 |
> |
44 |
> If you do not follow these steps you may get spurious build |
45 |
> failures when the linker tries unsuccessfully to combine non-PIE |
46 |
> and PIE code. |
47 |
> ===================================== |