Configuring or Building Buildroot, U-Boot, Linux Kernel, and BusyBox

Use the following commands to configure and build Buildroot, U-Boot, Linux kernel and BusyBox.

Configuring buildroot

Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross complication.

Use the following commands to configue Buildroot on your board.
$ make buildroot_initramfs-menuconfig # initramfs menuconfig
$ make buildroot_rootfs-menuconfig # rootfs menuconfig

Configuring U-boot

Universal Boot Loader (U-Boot) is an open source, primary boot loader used in embedded devices.

Use the following command to configure U-Boot on your board.
$ make uboot-menuconfig # uboot menuconfig

Configuring Linux Kernel

The Linux kernel is the main component of a Linux Operating System (OS) and is the core interface between a computer's hardware and its processes.

Use the following command to build the Linux kernel.
$ make linux-menuconfig # Kernel menuconfig

Configuring BusyBox

BusyBox is a convenient tool-set containing stripped-down versions of many Linux utilities.

Use the following commands to build the BusyBox menu configuration.
  • To build menu configuration for BusyBox with the Initramfs file system:
    $ make -C ./work/buildroot_initramfs/ O=./work/buildroot_initramfs busybox-menuconfig
  • To build menu configuration for BusyBox with the Rootfs file system:
    $ make -C ./work/buildroot_rootfs/ O=./work/buildroot_rootfs busybox-menuconfig 

Building Linux Kernel, BusyBox, and FFmpeg

If you want to build single package or module, perform the following commands according to your needs:

  • To build Linux Kernel:

    $ make vmlinux
  • To build BusyBox:
    make -C ./work/buildroot_rootfs/ O=./work/buildroot_rootfs busybox-rebuild # build
    busybox package
  • To build FFmpeg package:
    $ make -C ./work/buildroot_rootfs/ O=./work/buildroot_rootfs ffmpeg-rebuild