{"id":20285474,"url":"https://github.com/mramshaw/buildroot","last_synced_at":"2026-06-22T19:31:40.319Z","repository":{"id":92905100,"uuid":"188592794","full_name":"mramshaw/Buildroot","owner":"mramshaw","description":"Experiments with Buildroot","archived":false,"fork":false,"pushed_at":"2019-05-27T14:19:01.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-04T04:09:52.657Z","etag":null,"topics":["buildroot","embedded-systems","linux"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mramshaw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-25T17:10:01.000Z","updated_at":"2019-05-27T14:19:03.000Z","dependencies_parsed_at":"2023-04-29T00:57:06.078Z","dependency_job_id":null,"html_url":"https://github.com/mramshaw/Buildroot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mramshaw/Buildroot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mramshaw%2FBuildroot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mramshaw%2FBuildroot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mramshaw%2FBuildroot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mramshaw%2FBuildroot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mramshaw","download_url":"https://codeload.github.com/mramshaw/Buildroot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mramshaw%2FBuildroot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34663524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-22T02:00:06.391Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buildroot","embedded-systems","linux"],"created_at":"2024-11-14T14:26:57.597Z","updated_at":"2026-06-22T19:31:40.302Z","avatar_url":"https://github.com/mramshaw.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Buildroot\n\nExperiments with [Buildroot](http://www.buildroot.org/)\n\n## Contents\n\nThe contents are as follows:\n\n* [What is Buildroot](#what-is-buildroot)\n* [Source Code](#source-code)\n* [Surprises](#surprises)\n* [Configuration](#configuration)\n    * [Linux architecture and performance](#linux-architecture-and-performance)\n    * [Using a predefined configuration](#using-a-predefined-configuration)\n    * [Building a predefined configuration](#building-a-predefined-configuration)\n* [Reference](#reference)\n    * [Home Page](#home-page)\n    * [Source Code Home Page](#source-code-home-page)\n    * [User Manual](#user-manual)\n* [Credits](#credits)\n\n## What is Buildroot\n\nFrom http://www.buildroot.org/\n\n\u003e Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation\n\n## Source Code\n\nPull the source code as follows:\n\n    $ git clone git://git.busybox.net/buildroot\n\n## Surprises\n\nUnlike many linux projects, does not require root access or the use of `sudo`:\n\n\u003e No need to run as root, Buildroot is designed to be executed with normal user privileges.\n\nAnd:\n\n\u003e Running as root is even strongly discouraged!\n\n## Configuration\n\nOffers many options:\n\nCommand|Requirements|Packages\n-------|------------|--------\nmake menuconfig|ncurses|'ncurses-devel' or 'libncurses-dev' depending on distro\nmake nconfig|ncurses|'ncurses-devel' or 'libncurses-dev' depending on distro\nmake xconfig|Qt|Qt 4.8 or Qt 5.x\nmake gconfig|Gtk|gtk+-2.0, glib-2.0 and libglade-2.0\n\n'ncurses' is the lightest framework so we will use that; on Ubuntu this requires 'libncurses5-dev'.\n\nBoth `make menuconfig` and `make nconfig` are now options; my preference is for `make nconfig`.\n\nMore importantly Buildroot offers a staggering number of predefined configurations:\n\n```bash\n$ ls -al ./configs/\ntotal 808\ndrwxrwxr-x  2 owner owner 12288 May 25 12:11 .\ndrwxrwxr-x 16 owner owner  4096 May 25 12:14 ..\n-rw-rw-r--  1 owner owner  1002 May 25 12:11 aarch64_efi_defconfig\n ...\n\u003csnip\u003e\n ...\n-rw-rw-r--  1 owner owner  1084 May 25 12:11 zynq_zed_defconfig\n$\n```\n\n[The options include arm, bananapi, beaglebone, chromebook, raspberrypi and many others.]\n\n#### Linux architecture and performance\n\nLinux is what is known as a [microkernel](http://en.wikipedia.org/wiki/Microkernel) architecture.\nThe kernel is the bare minimum required to run the computer so that accessing hardware requires\nloading device drivers.\n\nDevice drivers generally run in __kernel space__ (as opposed to [user space](http://en.wikipedia.org/wiki/User_space),\nsometimes referred to as __userland__) as this is generally needed to deliver the level of\nperformance modern applications require.\n\nFor additional performance, compiling needed device drivers into a kernel is fairly trivial.\n\nThe difficulty comes in specifying the device drivers to compile into the kernel so as to\ndeliver increased performance under a normal workload. There can be what seem like hundreds\nof options to specify, as well as dependencies to sort through.\n\nThis is where Buildroot really shines, as it offers a rich selection of predefined configurations.\n\n#### Using a predefined configuration\n\nThis is a simple as \u003ckbd\u003emake savedefconfig\u003c/kbd\u003e, for instance:\n\n```bash\n$ make beaglebone_defconfig\nmkdir -p /home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config/lxdialog\nPKG_CONFIG_PATH=\"\" make CC=\"/usr/bin/gcc\" HOSTCC=\"/usr/bin/gcc\" \\\n    obj=/home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config -C support/kconfig -f Makefile.br conf\n/usr/bin/gcc -D_GNU_SOURCE -DCURSES_LOC=\"\u003cncurses.h\u003e\" -DLOCALE  -I/home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config -DCONFIG_=\\\"\\\"   /home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config/conf.o /home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config/zconf.tab.o  -o /home/owner/Documents/Linux/Buildroot/buildroot/output/build/buildroot-config/conf\n#\n# configuration written to /home/owner/Documents/Linux/Buildroot/buildroot/.config\n#\n$\n```\n\nThe full configuration for a beaglebone has now been written to the default __.config__ file.\n\n#### Building a predefined configuration\n\nNow that our configuration options are defined, this is as simple as running \u003ckbd\u003emake\u003c/kbd\u003e.\n\nOf course, if you wish to keep a log of the build that can be done as follows:\n\n    $ make 2\u003e\u00261 | tee build.log\n\n[Expect the initial build to take quite some time. Over a slow internet connection, it will ___really___ take some time.]\n\nThe built kernel image, bootloader image, and root filesystem image(s) will be in `output/images/`.\n\n```bash\n$ ls -alh output/images/\ntotal 118M\ndrwxr-xr-x 2 owner owner 4.0K May 25 15:08 .\ndrwxrwxr-x 6 owner owner 4.0K May 25 15:08 ..\n-rw-r--r-- 1 owner owner  36K May 25 15:08 am335x-boneblack.dtb\n-rw-r--r-- 1 owner owner  35K May 25 15:08 am335x-bone.dtb\n-rw-r--r-- 1 owner owner  35K May 25 15:08 am335x-bonegreen.dtb\n-rw-r--r-- 1 owner owner  41K May 25 15:08 am335x-evm.dtb\n-rw-r--r-- 1 owner owner  40K May 25 15:08 am335x-evmsk.dtb\n-rw-r--r-- 1 owner owner  16M May 25 15:08 boot.vfat\n-rw-r--r-- 1 owner owner  79K May 25 15:02 MLO\n-rw-r--r-- 1 owner owner  60M May 25 15:08 rootfs.ext2\nlrwxrwxrwx 1 owner owner   11 May 25 15:08 rootfs.ext4 -\u003e rootfs.ext2\n-rw-r--r-- 1 owner owner  15M May 25 15:08 rootfs.tar\n-rw-r--r-- 1 owner owner  77M May 25 15:08 sdcard.img\n-rw-r--r-- 1 owner owner 654K May 25 15:02 u-boot.img\n-rw-r--r-- 1 owner owner  376 May 25 15:08 uEnv.txt\n-rw-r--r-- 1 owner owner 5.3M May 25 15:08 zImage\n$\n```\n\n## Reference\n\nVarious useful websites are listed below.\n\n#### Home Page\n\nThe home page can be found here:\n\n    http://www.buildroot.org/\n\n#### Source Code Home Page\n\nThe source code can be found here:\n\n    http://git.busybox.net/buildroot/\n\n#### User Manual\n\nThe user manual can be found at:\n\n    http://buildroot.org/downloads/manual/manual.html\n\n## Credits\n\nBuildroot Training:\n\n    http://bootlin.com/doc/training/buildroot\n\n[These documents change frequently so it is worth checking back often for the most up-to-date version.]\n\nThe source for these materials can be found at:\n\n    http://github.com/bootlin/training-materials/\n\n[Pull requests can be submitted here also.]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmramshaw%2Fbuildroot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmramshaw%2Fbuildroot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmramshaw%2Fbuildroot/lists"}