- ARM (32 bit) GCC tool chain
- Arch Linux:
arm-none-eabi-gcc
- Alpine Linux and postmarketOS:
gcc-arm-none-eabi
- Debian and Ubuntu:
gcc-arm-none-eabi
- Fedora:
arm-none-eabi-gcc-cs
- Arch Linux:
- Device Tree Compiler
- Arch Linux:
dtc
- Alpine Linux and postmarketOS:
dtc
- Debian and Ubuntu:
device-tree-compiler
- Fedora:
dtc
- Arch Linux:
- libfdt
- Alpine Linux and postmarketOS:
dtc-dev
- Debian and Ubuntu:
libfdt-dev
- Fedora:
libfdt-devel
- Alpine Linux and postmarketOS:
- GNU tar
- Alpine Linux and postmarketOS:
tar
- Alpine Linux and postmarketOS:
Check targets.md for the make target you should use below. (It depends on the SoC of your device.)
$ make TOOLCHAIN_PREFIX=arm-none-eabi- lk2nd-msmXXXX
Replace TOOLCHAIN_PREFIX
with the path to your tool chain.
lk2nd.img
is built and placed into build-lk2nd-msmXXXX/lk2nd.img
.
Note: Unlike lk2nd, lk1st is still experimental and therefore not described here yet.
lk2nd build system provides few additional compile time settings that you can add
to the make
cmdline to enable some additional features.
Set to 0 to suppress most of the logging, set to 2 to enable excessive log messages (may slow down boot). Default is 1.
Set to 1 to make lk2nd print the logs on the screen.
By default lk2nd build system will try to get the version from git. If you need to override the version (i.e. if you want to package lk2nd build), set this varable.
Set the board compatible value.
Use this dtb for lk1st build.
Set specific panel driver. By default it uses cont-splash
.