docs/build: tidy up debian trixie notes
put them later in the guide, so that the user reads the guide in the exact order by which they would follow it. Signed-off-by: Leah Rowe <leah@libreboot.org>master
parent
99cce4fdc1
commit
6405715c0f
|
@ -22,60 +22,6 @@ canoeboot from the available source code.
|
|||
The following document describes how `cbmk` works, and how you can make changes
|
||||
to it: [canoeboot maintenance manual](../maintain/)
|
||||
|
||||
Debian Trixie/Sid
|
||||
=================
|
||||
|
||||
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid,
|
||||
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and
|
||||
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other
|
||||
toolchain components correspond to this version.
|
||||
|
||||
The GCC/GNAT versions need to match during build time, so Canoeboot's build
|
||||
system hacks the `PATH` environmental variable, setting up symlinks, matching
|
||||
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get
|
||||
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the
|
||||
KGPE-D16 board failed to compile in this configuration. This PATH hack is only
|
||||
done for compiling the coreboot crossgcc toolchain, and nothing else; after that,
|
||||
coreboot's toolchain is used.
|
||||
|
||||
For better reliability, you should, after running the dependencies script,
|
||||
remove `gnat` and install `gnat-14` instead, which is available on this day
|
||||
of 3 December 2025, but currently marked experimental. When you install
|
||||
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to
|
||||
anything. Canoeboot *still* accomodates this, detecting and matching the GCC
|
||||
and GNAT versions, which would in this instance match version 14 between them,
|
||||
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x.
|
||||
When we tested with this configuration, the KGPE-D16 images also compiled.
|
||||
|
||||
GNAT is used by coreboot, because some of the Intel graphics devices are
|
||||
initialised natively, with code written in Ada spark (called `libgfxinit`).
|
||||
|
||||
When updating from Debian stable to Debian Trixie(testing) or Sid, you should
|
||||
also check for orphaned packages, using `aptitude search '~o'`. Do this,
|
||||
removing what was leftover from the old release, and make sure to re-run the
|
||||
Debian dependencies script, but do it like this:
|
||||
|
||||
./mk dependencies debian --reinstall
|
||||
|
||||
NOTE: Ubuntu 24.10 also has the issue described above. Some other distros may
|
||||
also have it, if they're based on Debian Testing/Sid or Ubuntu 24.10.
|
||||
|
||||
MIPS cross compiler
|
||||
===================
|
||||
|
||||
Canoeboot has support for the Sony PlayStation (PS1/PSX), based on
|
||||
the PCSX-Redux Open BIOS. If you're doing a full release build, and/or
|
||||
specifically building the PSX BIOS, you need a MIPS cross compiler.
|
||||
|
||||
Arch-based systems have a mipsel cross compiler available from AUR, and most
|
||||
Debian-based systems have a mipsel cross compiler in apt; for these, the normal
|
||||
dependencies installation command will provide them. We know Void Linux and
|
||||
Fedora don't have a MIPS compiler, for instance.
|
||||
|
||||
If your distro doesn't have the MIPS compiler available,
|
||||
the [PlayStation](../install/playstation.md) page provides instructions for
|
||||
manual installation; please do this in addition to the normal dependencies.
|
||||
|
||||
Multi-threaded builds
|
||||
=====================
|
||||
|
||||
|
@ -209,6 +155,60 @@ Technically, any GNU+Linux distribution can be used to build canoeboot.
|
|||
However, you will have to write your own script for installing build
|
||||
dependencies.
|
||||
|
||||
Debian Trixie/Sid
|
||||
-----------------
|
||||
|
||||
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid,
|
||||
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and
|
||||
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other
|
||||
toolchain components correspond to this version.
|
||||
|
||||
The GCC/GNAT versions need to match during build time, so Canoeboot's build
|
||||
system hacks the `PATH` environmental variable, setting up symlinks, matching
|
||||
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get
|
||||
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the
|
||||
KGPE-D16 board failed to compile in this configuration. This PATH hack is only
|
||||
done for compiling the coreboot crossgcc toolchain, and nothing else; after that,
|
||||
coreboot's toolchain is used.
|
||||
|
||||
GNAT is used by coreboot, because some of the Intel graphics devices are
|
||||
initialised natively, with code written in Ada spark (called `libgfxinit`).
|
||||
|
||||
When updating from Debian stable to Debian Trixie(testing) or Sid, you should
|
||||
also check for orphaned packages, using `aptitude search '~o'`. Do this,
|
||||
removing what was leftover from the old release, and make sure to re-run the
|
||||
Debian dependencies script, but do it like this:
|
||||
|
||||
./mk dependencies debian --reinstall
|
||||
|
||||
For better reliability, you should, after running the dependencies script,
|
||||
remove `gnat` and install `gnat-14` instead, which is available on this day
|
||||
of 3 December 2025, but currently marked experimental. When you install
|
||||
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to
|
||||
anything. Canoeboot *still* accomodates this, detecting and matching the GCC
|
||||
and GNAT versions, which would in this instance match version 14 between them,
|
||||
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x.
|
||||
When we tested with this configuration, the KGPE-D16 images also compiled.
|
||||
|
||||
NOTE: Ubuntu 24.10 also has the issue described above. Some other distros may
|
||||
also have it, if they're based on Debian Testing/Sid or Ubuntu 24.10.
|
||||
|
||||
MIPS cross compiler
|
||||
-------------------
|
||||
|
||||
Canoeboot has support for the Sony PlayStation (PS1/PSX), based on
|
||||
the PCSX-Redux Open BIOS. If you're doing a full release build, and/or
|
||||
specifically building the PSX BIOS, you need a MIPS cross compiler.
|
||||
|
||||
Arch-based systems have a mipsel cross compiler available from AUR, and most
|
||||
Debian-based systems have a mipsel cross compiler in apt; for these, the normal
|
||||
dependencies installation command will provide them. We know Void Linux and
|
||||
Fedora don't have a MIPS compiler, for instance.
|
||||
|
||||
If your distro doesn't have the MIPS compiler available,
|
||||
the [PlayStation](../install/playstation.md) page provides instructions for
|
||||
manual installation; please do this in addition to the normal dependencies.
|
||||
|
||||
Next, build ROM images
|
||||
----------------------
|
||||
|
||||
|
|
|
@ -30,60 +30,6 @@ canoeboot з доступного джерельного коду.
|
|||
Наступний документ описує те, як працює `cbmk`, і як ви можете робити зміни
|
||||
до нього: [керівництво обслуговування canoeboot](../maintain/)
|
||||
|
||||
Debian Trixie/Sid
|
||||
=================
|
||||
|
||||
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid,
|
||||
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and
|
||||
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other
|
||||
toolchain components correspond to this version.
|
||||
|
||||
The GCC/GNAT versions need to match during build time, so Canoeboot's build
|
||||
system hacks the `PATH` environmental variable, setting up symlinks, matching
|
||||
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get
|
||||
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the
|
||||
KGPE-D16 board failed to compile in this configuration. This PATH hack is only
|
||||
done for compiling the coreboot crossgcc toolchain, and nothing else; after that,
|
||||
coreboot's toolchain is used.
|
||||
|
||||
For better reliability, you should, after running the dependencies script,
|
||||
remove `gnat` and install `gnat-14` instead, which is available on this day
|
||||
of 3 December 2025, but currently marked experimental. When you install
|
||||
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to
|
||||
anything. Canoeboot *still* accomodates this, detecting and matching the GCC
|
||||
and GNAT versions, which would in this instance match version 14 between them,
|
||||
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x.
|
||||
When we tested with this configuration, the KGPE-D16 images also compiled.
|
||||
|
||||
GNAT is used by coreboot, because some of the Intel graphics devices are
|
||||
initialised natively, with code written in Ada spark (called `libgfxinit`).
|
||||
|
||||
When updating from Debian stable to Debian Trixie(testing) or Sid, you should
|
||||
also check for orphaned packages, using `aptitude search '~o'`. Do this,
|
||||
removing what was leftover from the old release, and make sure to re-run the
|
||||
Debian dependencies script, but do it like this:
|
||||
|
||||
./mk dependencies debian --reinstall
|
||||
|
||||
NOTE: Ubuntu 24.10 also has the issue described above. Some other distros may
|
||||
also have it, if they're based on Debian Testing/Sid or Ubuntu 24.10.
|
||||
|
||||
MIPS cross compiler
|
||||
===================
|
||||
|
||||
Canoeboot has support for the Sony PlayStation (PS1/PSX), based on
|
||||
the PCSX-Redux Open BIOS. If you're doing a full release build, and/or
|
||||
specifically building the PSX BIOS, you need a MIPS cross compiler.
|
||||
|
||||
Arch-based systems have a mipsel cross compiler available from AUR, and most
|
||||
Debian-based systems have a mipsel cross compiler in apt; for these, the normal
|
||||
dependencies installation command will provide them. We know Void Linux and
|
||||
Fedora don't have a MIPS compiler, for instance.
|
||||
|
||||
If your distro doesn't have the MIPS compiler available,
|
||||
the [PlayStation](../install/playstation.md) page provides instructions for
|
||||
manual installation; please do this in addition to the normal dependencies.
|
||||
|
||||
Multi-threaded builds
|
||||
=====================
|
||||
|
||||
|
@ -173,6 +119,63 @@ Check: `config/dependencies/` for list of supported distros.
|
|||
Однак, вам потрібно буде написано свій власний сценарій для встановлення залежностей
|
||||
побудови.
|
||||
|
||||
Debian Trixie/Sid
|
||||
-----------------
|
||||
|
||||
Debian Trixie, the testing release as of 3 January 2025, and Debian Sid,
|
||||
provide `gnat` and `gcc` as you expect, but `gnat` resolves to `gnat-13` and
|
||||
installs `gcc-13` as a dependency, while `gcc` resolves to `gcc-14` and other
|
||||
toolchain components correspond to this version.
|
||||
|
||||
The GCC/GNAT versions need to match during build time, so Canoeboot's build
|
||||
system hacks the `PATH` environmental variable, setting up symlinks, matching
|
||||
GNAT to GCC or GNAT to GCC. When you run `./mk dependencies debian`, you get
|
||||
GNAT 13 and GCC 14. This seems to make most boards compile; in our testing, the
|
||||
KGPE-D16 board failed to compile in this configuration. This PATH hack is only
|
||||
done for compiling the coreboot crossgcc toolchain, and nothing else; after that,
|
||||
coreboot's toolchain is used.
|
||||
|
||||
GNAT is used by coreboot, because some of the Intel graphics devices are
|
||||
initialised natively, with code written in Ada spark (called `libgfxinit`).
|
||||
|
||||
When updating from Debian stable to Debian Trixie(testing) or Sid, you should
|
||||
also check for orphaned packages, using `aptitude search '~o'`. Do this,
|
||||
removing what was leftover from the old release, and make sure to re-run the
|
||||
Debian dependencies script, but do it like this:
|
||||
|
||||
./mk dependencies debian --reinstall
|
||||
|
||||
For better reliability, you should, after running the dependencies script,
|
||||
remove `gnat` and install `gnat-14` instead, which is available on this day
|
||||
of 3 December 2025, but currently marked experimental. When you install
|
||||
GNAT 14, GNAT 13 is removed but `gnat` (in `PATH`) still won't resolve to
|
||||
anything. Canoeboot *still* accomodates this, detecting and matching the GCC
|
||||
and GNAT versions, which would in this instance match version 14 between them,
|
||||
so that `gnat` and `gcc` are both in PATH at build time, resolving to v14.x.
|
||||
When we tested with this configuration, the KGPE-D16 images also compiled.
|
||||
|
||||
NOTE: Ubuntu 24.10 also has the issue described above. Some other distros may
|
||||
also have it, if they're based on Debian Testing/Sid or Ubuntu 24.10.
|
||||
|
||||
MIPS cross compiler
|
||||
-------------------
|
||||
|
||||
Canoeboot has support for the Sony PlayStation (PS1/PSX), based on
|
||||
the PCSX-Redux Open BIOS. If you're doing a full release build, and/or
|
||||
specifically building the PSX BIOS, you need a MIPS cross compiler.
|
||||
|
||||
Arch-based systems have a mipsel cross compiler available from AUR, and most
|
||||
Debian-based systems have a mipsel cross compiler in apt; for these, the normal
|
||||
dependencies installation command will provide them. We know Void Linux and
|
||||
Fedora don't have a MIPS compiler, for instance.
|
||||
|
||||
If your distro doesn't have the MIPS compiler available,
|
||||
the [PlayStation](../install/playstation.md) page provides instructions for
|
||||
manual installation; please do this in addition to the normal dependencies.
|
||||
|
||||
Next, build ROM images
|
||||
----------------------
|
||||
|
||||
В якості результату, ви тепер можете (після встановлення правильних залежностей побудови) виконати
|
||||
лише одну команду, з свіжого Git clone, для побудови образів ROM:
|
||||
|
||||
|
|
|
@ -9,8 +9,7 @@ a relic from Libreboot, upon which Canoeboot is based, and provided for
|
|||
historical purposes (Libreboot also uses nvmutil these days).**
|
||||
|
||||
**If all you want to do is change the MAC address, you might use `nvmutil`
|
||||
instead. See: [nvmutil documentation](../install/nvmutil.md), or use
|
||||
the [inject script](ivy_has_common.md).**
|
||||
instead. See: [nvmutil documentation](../install/nvmutil.md).
|
||||
|
||||
The documentation below is *still valid*, if you actually want to use ich9utils.
|
||||
You can find it in older Libreboot releases, up to Libreboot 20230625. The only
|
||||
|
|
|
@ -439,10 +439,6 @@ usually possible when Canoeboot is running (barring special circumstances).
|
|||
Run flashprog on host CPU
|
||||
------------------------
|
||||
|
||||
**Always remember to [insert vendor files](ivy_has_common.md), when using
|
||||
release images. Otherwise, these files are added automatically at build
|
||||
time, when building from source (but they are not present in release images).**
|
||||
|
||||
### Flash chip size
|
||||
|
||||
Use this to find out:
|
||||
|
|
Loading…
Reference in New Issue