This repository is a "simple" guide on how to build U-Boot, Linux kernel, and Rootfs from scratch for the linux embedded system.
You'll need the following programs installed on your machine
- GNU Make for running the Makefile
- python and python-dev
- swig: Generate scripting interfaces to C/C++ code
- ccache: caches the output of C/C++ compilation so that the next time
- dh-autoreconf: debhelper add-on to call autoreconf and clean up after the build
- net-tools: NET-3 networking toolkit, required for building OpenVPN
- cmake: for building some opensoucre apps
In ubuntu, run the following command to install all of them:
sudo apt-get install -y build-essential python python-dev swig ccache net-tools dh-autoreconf cmake
git clone https://github.com/hhdang6637/embedded_linux_skeleton.git
To compile and run the example project, run the following commands:
export MODEL=arm_vexpress_a9
cd embedded_linux_skeleton
make
After that, we have the uboot
, kernel
, and rootfs
image files at build/bin/
- Install QEMU:
sudo apt install qemu-system-arm
- Run QEMU with Kernel and Rootfs:
First, run the following command:
./qemu_scripts/qemu_kernel_roofs_start.sh
Login with root
and no password.
Access Web Gui: http://127.0.0.1:2080
To be continued...