summaryrefslogtreecommitdiff
path: root/components/toolchain/binaries/README.textile
blob: e8863caf116471ac5a8abaa32194cfc5a7977447 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108

h1. The Linaro Binary Toolchain


The Linaro GCC 7.1-2017.05-rc1 Release-Candidate is now available.

*Notice*: GCC 7.1 ABI change for arm*-*-* targets, and note for aarch64*-*-* targets

From GCC 7.1 release notes:

_On ARM targets (arm*-*-*), a bug introduced in GCC 5 that affects conformance to the procedure call standard (AAPCS) has been fixed. The bug affects some C++ code where class objects are passed by value to functions and could result in incorrect or inconsistent code being generated. This is an ABI change. If the option -Wpsabi is enabled (on by default) the compiler will emit a diagnostic note for code that might be affected._

p((((. "https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728":https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728

GCC 5 and GCC 6 releases will continue to be affected by the ABI bug, since changing ABI in these releases is not practical.  A warning enabled by -Wpsabi option was added to GCC 5 and GCC 6 toolchains to diagnose codebases that might be affected by the ABI bug.

Additionally, this same bug was present in AArch64 backend in development versions of GCC 7.  There was no releases of GCC with this bug present in AArch64 backend, therefore the release notes does not mention this.  However, be advised that any code bases built with development versions of GCC 7 need to be recompiled with released version of GCC 7 to conform to ABI.

For an explanation of GCC 7 series changes please see the following website:

p((((. "https://gcc.gnu.org/gcc-7/changes.html":https://gcc.gnu.org/gcc-7/changes.html

For help in porting to GCC 7 please see the following explanation:

p((((. "https://gcc.gnu.org/gcc-7/porting_to.html":https://gcc.gnu.org/gcc-7/porting_to.html


Download release-candidate packages from:

p((((. (sources) "http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05-rc1/":http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05-rc1/

p((((. (binaries) "http://snapshots.linaro.org/components/toolchain/binaries/7.1-2017.05-rc1/":http://snapshots.linaro.org/components/toolchain/binaries/7.1-2017.05-rc1/


Previous snapshots and release-candidates are at:

p((((. "http://snapshots.linaro.org/components/toolchain/binaries/":http://snapshots.linaro.org/components/toolchain/binaries/


Previous releases are at:

p((((. "http://releases.linaro.org/components/toolchain/binaries/":http://releases.linaro.org/components/toolchain/binaries/


A description of the arm and AArch64 target triples can be found at:

p((((. "https://collaborate.linaro.org/display/TCWGPUB/ARM+and+AArch64+Target+Triples":https://collaborate.linaro.org/display/TCWGPUB/ARM+and+AArch64+Target+Triples


h2. Host Requirements


Linaro officially supports the current and previous Ubuntu LTS releases (as of the time of this release).  This does not mean that the toolchain will not work on other/older Linux distributions.  See the following for the life-time of Ubuntu LTS releases.

p((((. "https://wiki.ubuntu.com/Releases":https://wiki.ubuntu.com/Releases


The host system upon which the cross-compiler will run requires a minimum of glibc 2.14, because of API changes to glibc's memcpy API.

p((((. "https://bugs.linaro.org/show_bug.cgi?id=1869":https://bugs.linaro.org/show_bug.cgi?id=1869


h2. Package Versions

Linaro GCC 7.1-2017.05-rc1

p((((. "http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05-rc1/":http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05-rc1/

FSF glibc 2.25 (release/2.25)

p((((. "https://lists.gnu.org/archive/html/info-gnu/2017-02/msg00002.html":https://lists.gnu.org/archive/html/info-gnu/2017-02/msg00002.html

Newlib 2.5 (newlib-2_5_0 tag)

p((((. "https://sourceware.org/ml/newlib/2016/msg01191.html":https://sourceware.org/ml/newlib/2016/msg01191.html

GNU Binutils 2.28 (binutils-2_28-branch)

p((((. "https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=binutils/NEWS;hb=refs/tags/binutils-2_28":https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=binutils/NEWS;hb=refs/tags/binutils-2_28

FSF GDB 8.0 (gdb-8.0-branch)

p((((. "https://sourceware.org/ml/gdb-announce/2017/msg00001.html":https://sourceware.org/ml/gdb-announce/2017/msg00001.html

Linaro toolchain package git branches are hosted at:

p((((. "http://git.linaro.org/toolchain":http://git.linaro.org/toolchain


h2. NEWS for GCC 7 (as of Linaro GCC 7.1-2017.05-rc1)


* Performance related backports from the following snapshots have been included: Linaro GCC 7.1-2017.05.

p(((.
See the following Linaro GCC snapshots:

p(((. "http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05/":http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05/


h2. Contact Linaro


File bugs at "http://bugs.linaro.org":http://bugs.linaro.org

For Linaro member support see "http://support.linaro.org":http://support.linaro.org

For Linaro community support email "linaro-toolchain@lists.linaro.org":mailto:linaro-toolchain@lists.linaro.org