This article describes setting up an embedded Linux cross-development environment targeting a virtual machine running on the development host. It covers installing Qemu and using it to debug applications and kernels, both with supplied test-images and with custom… kernel/filesystem images created with Buildroot.
The article describes how to get started writing code for an “embedded” architecture such as MIPS or ARM, even though you may not yet have any actual hardware based on that architecture. Since embedded projects typically involve concurrent hardware and software development, targeting emulated hardware is one of the most fundamental skills required by developers working in the device development market.
The article was written by Gilad Ben-Yossef, co-founder of Israel-based embedded Linux training and consulting firm Codefidence. Ben-Yossef is also co-author of Building Embedded Linux Systems, originally written by Karim Yaghmour.
Ben-Yossef delves into specific topics that include:
- Installing Qemu
- Installing a kernel and root filesystem
- Booting Linux on the emulator
- Setting up networking with the development host
- Transferring files to/from the target
- Using sample code distributed with Qemu:
- Setting up gdb on the host to debug applications running on the target
- Using gdb to debut Linux kernels running on the target
- Building your own kernels and filesystem images (using Buildroot)
Click below to read the full article.
This article was originally published on LinuxDevices and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.