User Tools

Site Tools

This wiki is read only and for archival purposes only. >>>>>>>>>> Please use the new OpenWrt wiki at <<<<<<<<<<

This is the Developer Guide. It is part of the reorganization of the top-level Wiki pages. Please edit the page, or make comments on the Fixing top-level pages on Github. Thanks! -richbhanover

This page is a copy-paste of all the developer-related information from the old top-level Documentation page. It hasn't seen any curation.


These articles focus on compiling OpenWrt sources to create custom builds of the software.

页面 描述
OpenWrt Buildroot — About About OpenWrt Buildroot
OpenWrt Buildroot – Installation Setting up an OpenWrt build system
OpenWrt Buildroot – Usage Using the build system to compile OpenWrt
Build VM Using the build system to compile OpenWrt within a virtual machine
Feeds Working with package feeds
Image Generator The Image Generator (aka Image builder) lets you create custom images without having to compile or setting up a build system
SDK Using the SDK to compile package sources


Build-HowTos include doing things from scratch and then using the Build System to obtain an own firmware (see template_howtobuild):

Page Description
Netgear WNDR3700 Build the Netgear WNDR3700 firmware
Seagate Dockstar Build the Seagate Dockstar firmware
TP-Link TL-MR3420 Build the TP-Link TL-MR3420 firmware
D-link DIR-632-A1 Build the DIR-632-A1 firmware
3G-Dongle Build firmware including UMTS-Modem support
single package Compile and package only one single package
SheevaPlug Build the SheevaPlug firmware


Documentation of specific development related tasks.

页面 描述
First Steps First Steps on an unsupported device
Add a platform General considerations for adding new platform support
Add a device Howto add support for a new device
Kernel stuff
drivers Stuff related to drivers
Debugging On Debugging
Build environments Manage different configurations and files in a single Buildroot
Software Libraries What libraries you could use
Crosscompile Cross compile sources into binaries without packaging them
Packages Packaging software
Feeds Working with package feeds
Dependencies Using dependencies for packages
Patches Adding, modifying and refreshing patches
Bugs Reporting and tracking bugs
UCI-Lua Lua bindings for UCI
LuCI Developing LuCI addons
Config scripting Using UCI configuration files in shell scripts
Network scripting Network scripting and protocol handler API
GNU Debugger How to use the GNU Debugger
Eclipse IDE How to use the Eclipse IDE including GNU Debugger


Documentation of specific patching related tasks. Namely, how to create the patch(es), and submit them properly to the OpenWrt-dev mailing list.

Page Description
Using GIT Primer


Articles covering background information and technical description of various OpenWrt components.

页面 描述
OPKG OPKG package manager reference
mtd mtd utility reference
sysupgrade sysupgrade script
UCI UCI reference
LuCI LuCI reference (Homepage)
netifd Netifd (Network Interface Daemon) reference
Flash Layout How data is stored on the flash
Flash About the different types of flash and what to consider
Filesystems About the different file systems
The Bootloader About Booloaders
Booting About the boot process
Init Scripts Init script implementation reference
Preinit Preinit, Mount Root, and First Boot Scripts
Block Mount Block Device Mounting
Hotplug Hotplug
Boot & Init Requirements What the new init system needs to do to be feature complete compared to current, and goals for improvement
brcm63xx.imagetag Information on the firmware image format for brcm63xx
TRX vs TRX2 vs BIN Information on the different file types
External Documentation Links to external documentation
zh-cn/doc/playground/developer.txt · Last modified: 2016/10/02 17:24 by leangjia