-
Notifications
You must be signed in to change notification settings - Fork 0
Building Linux kernel with Filesystem Using Buildroot
Stable Buildroot releases are published every three months. Tarballs are available for each stable release (http://buildroot.org/downloads/). However, you can clone an upstream Git repository:
$ git clone https://git.busybox.net/buildroot
$ cd buildroot
Upstream Buildroot does not support ARCv3 families. If you are going to build Linux for ARCv3 then consider using a separate Synopsys repository with patches for support of ARC HS5x and ARC HS6x:
$ git clone https://github.com/foss-for-synopsys-dwc-arc-processors/buildroot
$ cd buildroot
Buildroot uses configuration files (defconfig
s) for configuring a root filesystem,
a toolchain, a Linux kernel, etc. Buildroot comes with a number of existing predefined
configurations which may be found in config
directory. Use make list-defconfigs
command
to list all available configurations:
$ make list-defconfigs | grep snps
snps_arc32_defconfig - Build for snps_arc32
snps_arc64_defconfig - Build for snps_arc64
snps_arc700_axs101_defconfig - Build for snps_arc700_axs101
snps_archs38_axs103_defconfig - Build for snps_archs38_axs103
snps_archs38_haps_defconfig - Build for snps_archs38_haps
snps_archs38_hsdk_defconfig - Build for snps_archs38_hsdk
Here is a short description of each configuration:
-
snps_arc32_defconfig
- A configuration for ARC HS5x on HAPS, nSIM or QEMU (available only in a separate repository). -
snps_arc64_defconfig
- A configuration for ARC HS6x on HAPS, nSIM or QEMU (available only in a separate repository). -
snps_arc700_axs101_defconfig
- A configuration for ARC 700 on AXS101 development board. -
snps_archs38_axs103_defconfig
- A configuration for ARC HS38 on AXS103 development board. -
snps_archs38_haps_defconfig
- A configuration for ARC HS3x/4x in ZeBU, HAPS, nSIM or QEMU. -
snps_archs38_hsdk_defconfig
- A configuration for ARC HS3x/4x on HSDK and HSDK 4xD development boards. This configuration builds images for running Linux using U-Boot.
You can select a predefined configuration this way:
$ make snps_archs38_haps_defconfig
You can manually tune filesystem's configuration this way:
$ make menuconfig
Also, you can configure kernel's options this way:
$ make linux-menuconfig
The final configuration file is saved in .config
file.
Buildroot with default configurations, which are mentioned above, downloads all necessary sources for Linux, toolchain and packages and
builds Linux kernel, filesystem packages and toolchain in a proper way. You can build an image using make
:
$ make