Skip to content

Commit 410cb2a

Browse files
committed
website: add _xpack.github.io
1 parent 7310ca3 commit 410cb2a

28 files changed

+10737
-0
lines changed
Lines changed: 245 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,245 @@
1+
---
2+
3+
title: xPack GCC v8.5.0-1 released
4+
sidebar: gcc
5+
6+
summary: "Version **8.5.0-1** is the first release of **xPack GCC**."
7+
8+
version: 8.5.0-1
9+
npm_subversion: 2
10+
11+
download_url: https://github.com/xpack-dev-tools/gcc-xpack/releases/v8.5.0-1/
12+
13+
date: 2021-05-24 21:30:00 +0300
14+
15+
redirect_to: https://xpack-dev-tools.github.io/gcc-xpack/blog/2021/05/24/gcc-v8-5-0-1-released/
16+
17+
comments: true
18+
19+
categories:
20+
- releases
21+
- gcc
22+
23+
tags:
24+
- releases
25+
- gcc
26+
- binaries
27+
- c++
28+
29+
---
30+
31+
The [xPack GCC](https://xpack.github.io/dev-tools/gcc/)
32+
is the **xPack** distribution of the
33+
[GNU Compiler Collection](https://gcc.gnu.org).
34+
35+
There are separate binaries for **Windows** (x64 and x86),
36+
**macOS** (x64) and **GNU/Linux** (x64 and x86, arm64 and arm).
37+
38+
{% include note.html content="The main targets for the GNU/Linux Arm
39+
binaries are the **Raspberry Pi** class devices (armv7l and aarch64;
40+
armv6 is not supported)." %}
41+
42+
## Download
43+
44+
The binary files are available from [GitHub Releases]({{ page.download_url }}).
45+
46+
## Install
47+
48+
The full details of installing the **xPack GNU Arm Embedded GCC** on
49+
various platforms are presented in the separate [Install]({{ site.baseurl }}/dev-tools/gcc/install/) page.
50+
51+
On macOS, the general build tools are available in the
52+
**Command Line Tools** package, which can be installed standalone or
53+
as part of Xcode.
54+
55+
### Easy install
56+
57+
The easiest way to install GNU Arm Embedded GCC is with
58+
[`xpm`]({{ site.baseurl }}/xpm/)
59+
by using the **binary xPack**, available as
60+
[`@xpack-dev-tools/gcc`](https://www.npmjs.com/package/@xpack-dev-tools/gcc)
61+
from the [`npmjs.com`](https://www.npmjs.com) registry.
62+
63+
To install the latest version available, use:
64+
65+
```sh
66+
cd my-project
67+
xpm init # Only at first use.
68+
69+
xpm install @xpack-dev-tools/gcc@latest
70+
71+
ls -l xpacks/.bin
72+
```
73+
74+
To install this specific version, use:
75+
76+
```sh
77+
xpm install @xpack-dev-tools/gcc@{{ page.version }}.{{ page.npm_subversion }}
78+
```
79+
80+
## Compliance
81+
82+
This release follows the official
83+
[GCC](https://gcc.gnu.org/releases.html) release.
84+
85+
## Supported languages
86+
87+
The supported languages are:
88+
89+
- C
90+
- C++
91+
- Obj-C
92+
- Obj-C++
93+
- Fortran
94+
95+
## Changes
96+
97+
Compared to the GNU version, there should be no functional changes.
98+
99+
The only patch applied was to make it correctly
100+
recognise macOS version 11.x instead of 10.16;
101+
the code was copied from the more recent
102+
11.x sources.
103+
104+
## Bug fixes
105+
106+
- none
107+
108+
## Enhancements
109+
110+
- none
111+
112+
## Known problems
113+
114+
- on macOS, the g++ compiler complains about something like _... the weak
115+
symbol cannot be overridden at runtime. This was likely caused by different
116+
translation units being compiled with different visibility settings_.
117+
The reason for triggering this warning was not identified (yet), but the
118+
resulting binaries seem functional.
119+
120+
### macOS binutils
121+
122+
The GNU binutils are not compatible with the macOS linker and are not included
123+
in the macOS archive.
124+
125+
### macOS SDK
126+
127+
For the package to be standalone, the `MacOSX10.10.sdk` folder
128+
includes the 10.10 SDK.
129+
130+
## Shared libraries
131+
132+
On all platforms the packages are standalone, and expect only the standard
133+
runtime to be present on the host.
134+
135+
All dependencies that are build as shared libraries are copied locally in the
136+
same folder as the executable.
137+
138+
### `DT_RPATH` and `LD_LIBRARY_PATH`
139+
140+
On GNU/Linux the binaries are adjusted to use a relative path:
141+
142+
```console
143+
% readelf -d library.so | grep rpath
144+
0x000000000000001d (RPATH) Library runpath: [$ORIGIN]
145+
```
146+
147+
In the GNU ld.so search strategy, the `DT_RPATH` has
148+
the highest priority, higher than `LD_LIBRARY_PATH`, so if this later one
149+
is set in the environment, it should not interfere with the xPack binaries.
150+
151+
Please note that previous versions, up to mid-2020, used `DT_RUNPATH`, which
152+
has a priority lower than `LD_LIBRARY_PATH`, and does not tolerate setting
153+
it in the environment.
154+
155+
### `@executable_path`
156+
157+
Similarly, on macOS, the binaries are adjusted with `otool` to use a
158+
relative path.
159+
160+
## Documentation
161+
162+
The original PDF documentation is available in the `share/doc` folder.
163+
164+
## Supported platforms
165+
166+
Binaries for **Windows**, **macOS** and **GNU/Linux** are provided.
167+
168+
The binaries were built using the
169+
[xPack Build Box (XBB)](https://github.com/xpack/xpack-build-box), a set
170+
of build environments based on slightly older distributions, that should be
171+
compatible with most recent systems.
172+
173+
- x86/x64 GNU/Linux: all binaries were built with GCC 9.3, running in an
174+
Ubuntu 12 Docker container
175+
- arm64/arm GNU/Linux: all binaries were built with GCC 9.3, running in an
176+
Ubuntu 16 Docker container (added in mid-2020)
177+
- x86/x64 Windows: all binaries were built with mingw-w64 GCC 9.3, running in an
178+
Ubuntu 12 Docker container
179+
- x64 macOS: all binaries were built with GCC 9.3, running in a separate
180+
folder on macOS 10.10.5.
181+
182+
## Build
183+
184+
The scripts used to build this distribution are in:
185+
186+
- `distro-info/scripts`
187+
188+
For the prerequisites and more details on the build procedure, please see the
189+
[README-MAINTAINER](https://github.com/xpack-dev-tools/gcc-xpack/blob/xpack/README-MAINTAINER.md) page.
190+
191+
## CI tests
192+
193+
TBD
194+
195+
## Tests
196+
197+
The binaries were testes on Windows 10 Pro 32/64-bit, Ubuntu 18 LTS 64-bit,
198+
Xubuntu 18 LTS 32-bit and macOS 11.2.
199+
200+
The tests consist in building simple hello world programs.
201+
202+
Since the source code used for GCC is identical to the one used by GNU, the
203+
long and complex tests performed by GNU to validate their release were not
204+
executed again.
205+
206+
## Checksums
207+
208+
The SHA-256 hashes for the files are:
209+
210+
```txt
211+
5ca5abb0e6d7a3048d47bd46f0278c7534b7f817ac2cbc4b54cea646373e8b89
212+
xpack-gcc-8.5.0-1-darwin-x64.tar.gz
213+
214+
efda34b8865198853edac865737824dfa76d24480f4a057c22fa4d6bef81dee6
215+
xpack-gcc-8.5.0-1-linux-arm64.tar.gz
216+
217+
bf96d4f185c17043bf84f2803252a1b0af63266c023dd62396a667f025bcfe96
218+
xpack-gcc-8.5.0-1-linux-arm.tar.gz
219+
220+
de97e4242e1c691f488a32f0bab76e8019b3959e9d0078b25a4f34bcf3a14ab6
221+
xpack-gcc-8.5.0-1-linux-ia32.tar.gz
222+
223+
ef74a7b554e586f84ce5d17bb6d2074f4ab59e07da3038029f04f8a2fa657cc5
224+
xpack-gcc-8.5.0-1-linux-x64.tar.gz
225+
226+
84db4ad846a25156def667e18d3ca376497388494abe08636f825f9f84f9d847
227+
xpack-gcc-8.5.0-1-win32-ia32.zip
228+
229+
71c9a4744b207e080b7ab94e777b8a8f90018cccf1896fa650cbee2d91ac779c
230+
xpack-gcc-8.5.0-1-win32-x64.zip
231+
```
232+
233+
## Download analytics
234+
235+
- GitHub [xpack-dev-tools/gcc-xpack](https://github.com/xpack-dev-tools/gcc-xpack/)
236+
- this release [![Github All Releases](https://img.shields.io/github/downloads/xpack-dev-tools/gcc-xpack/v{{ page.version }}/total.svg)](https://github.com/xpack-dev-tools/gcc-xpack/releases/v{{ page.version }}/)
237+
- all xPack releases [![Github All Releases](https://img.shields.io/github/downloads/xpack-dev-tools/gcc-xpack/total.svg)](https://github.com/xpack-dev-tools/gcc-xpack/releases/)
238+
- [individual file counters](https://somsubhra.github.io/github-release-stats/?username=xpack-dev-tools&repository=gcc-xpack) (grouped per release)
239+
- npmjs.com [@xpack-dev-tools/gcc](https://www.npmjs.com/package/@xpack-dev-tools/gcc)
240+
- latest releases [![npm](https://img.shields.io/npm/dw/@xpack-dev-tools/gcc.svg)](https://www.npmjs.com/package/@xpack-dev-tools/gcc/)
241+
- all @xpack-dev-tools releases [![npm](https://img.shields.io/npm/dt/@xpack-dev-tools/gcc.svg)](https://www.npmjs.com/package/@xpack-dev-tools/gcc/)
242+
243+
Credit to [Shields IO](https://shields.io) for the badges and to
244+
[Somsubhra/github-release-stats](https://github.com/Somsubhra/github-release-stats)
245+
for the individual file counters.

0 commit comments

Comments
 (0)