File site/docs/build/index.md changed (mode: 100644) (index 201c455..7f6c916) |
... |
... |
libreboot from the available source code. |
22 |
22 |
The following document describes how `lbmk` works, and how you can make changes |
The following document describes how `lbmk` works, and how you can make changes |
23 |
23 |
to it: [libreboot maintenance manual](../maintain/) |
to it: [libreboot maintenance manual](../maintain/) |
24 |
24 |
|
|
|
25 |
|
Debian Trixie/Sid |
|
26 |
|
================= |
|
27 |
|
|
|
28 |
|
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid, |
|
29 |
|
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and |
|
30 |
|
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other |
|
31 |
|
toolchain components correspond to this version. |
|
32 |
|
|
|
33 |
|
The GCC/GNAT versions need to match during build time, so Libreboot's build |
|
34 |
|
system hacks the `PATH` environmental variable, setting up symlinks, matching |
|
35 |
|
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get |
|
36 |
|
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the |
|
37 |
|
KGPE-D16 board failed to compile in this configuration. This PATH hack is only |
|
38 |
|
done for compiling the coreboot crossgcc toolchain, and nothing else; after that, |
|
39 |
|
coreboot's toolchain is used. |
|
40 |
|
|
|
41 |
|
For better reliability, you should, after running the dependencies script, |
|
42 |
|
remove `gnat` and install `gnat-14` instead, which is available on this day |
|
43 |
|
of 3 December 2025, but currently marked experimental. When you install |
|
44 |
|
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to |
|
45 |
|
anything. Libreboot *still* accomodates this, detecting and matching the GCC |
|
46 |
|
and GNAT versions, which would in this instance match version 14 between them, |
|
47 |
|
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x. |
|
48 |
|
|
|
49 |
|
GNAT is used by coreboot, because some of the Intel graphics devices are |
|
50 |
|
initialised natively, with code written in Ada spark (called `libgfxinit`). |
|
51 |
|
|
25 |
52 |
MIPS cross compiler |
MIPS cross compiler |
26 |
53 |
=================== |
=================== |
27 |
54 |
|
|
File site/docs/build/index.uk.md changed (mode: 100644) (index a1cca95..fd66a6c) |
... |
... |
libreboot з доступного джерельного коду. |
30 |
30 |
Наступний документ описує те, як працює `lbmk`, і як ви можете робити зміни |
Наступний документ описує те, як працює `lbmk`, і як ви можете робити зміни |
31 |
31 |
до нього: [керівництво обслуговування libreboot](../maintain/) |
до нього: [керівництво обслуговування libreboot](../maintain/) |
32 |
32 |
|
|
|
33 |
|
Debian Trixie/Sid |
|
34 |
|
================= |
|
35 |
|
|
|
36 |
|
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid, |
|
37 |
|
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and |
|
38 |
|
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other |
|
39 |
|
toolchain components correspond to this version. |
|
40 |
|
|
|
41 |
|
The GCC/GNAT versions need to match during build time, so Libreboot's build |
|
42 |
|
system hacks the `PATH` environmental variable, setting up symlinks, matching |
|
43 |
|
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get |
|
44 |
|
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the |
|
45 |
|
KGPE-D16 board failed to compile in this configuration. This PATH hack is only |
|
46 |
|
done for compiling the coreboot crossgcc toolchain, and nothing else; after that, |
|
47 |
|
coreboot's toolchain is used. |
|
48 |
|
|
|
49 |
|
For better reliability, you should, after running the dependencies script, |
|
50 |
|
remove `gnat` and install `gnat-14` instead, which is available on this day |
|
51 |
|
of 3 December 2025, but currently marked experimental. When you install |
|
52 |
|
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to |
|
53 |
|
anything. Libreboot *still* accomodates this, detecting and matching the GCC |
|
54 |
|
and GNAT versions, which would in this instance match version 14 between them, |
|
55 |
|
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x. |
|
56 |
|
|
|
57 |
|
GNAT is used by coreboot, because some of the Intel graphics devices are |
|
58 |
|
initialised natively, with code written in Ada spark (called `libgfxinit`). |
|
59 |
|
|
33 |
60 |
MIPS cross compiler |
MIPS cross compiler |
34 |
61 |
=================== |
=================== |
35 |
62 |
|
|