Table of Contents
开发者指南
OpenWrt 内部结构的快速概览
使用 Image Builder 组装固件映像
贡献指南
源代码
使用工具链
安全
错误追踪器
在虚拟机中测试 OpenWrt
所有开发文章
开发者指南
该页面包含指向 OpenWrt 开发文档所有页面的链接. 使用搜索工具查找更多信息.
OpenWrt 内部结构的快速概览
Overview
使用 Image Builder 组装固件映像
Using the Image Builder
Image Builder frontends
贡献指南
Submitting patches
源代码
The OpenWrt source code
Revision number calculation
使用工具链
Build system essentials
Build system setup
Build system setup macOS
Build system setup WSL
Build system usage
Building a single package
Building OpenWrt ON OpenWrt
Cross compiling
Quick image building guide
Using build environments
Using the SDK
Working with patches
安全
Security
OpenWrt SELinux policy development, customization, and testing
错误追踪器
Reporting bugs
在虚拟机中测试 OpenWrt
Docker OpenWrt Image Generation
Metarouter Virtualization on Mikrotik RouterBoard
OpenWrt as a Docker Image
OpenWrt as a Xen DomU guest
OpenWrt as Docker container host
OpenWrt as DomU in Debian Xen4 in a private network
OpenWrt as QEMU/KVM host server
OpenWrt in LXC containers
OpenWrt in QEMU
OpenWrt on UTM on Apple Silicon HowTo
OpenWrt on VirtualBox HowTo
OpenWrt on VMware Fusion on Apple Silicon HowTo
OpenWrt on VMware HowTo
OpenWrt running as metarouter on mikrotik routerOS
VirtualBox Advanced
所有开发文章
Documentation
Developer guide
21.02: Major cosmetic changes
Adding a new device
Adding new device support
Adding new elements to LuCI
Adding new platform support
Building image with support for 3g/4g and usb tethering
Building MPD-full with PulseAudio
Building OpenWrt for Netgear WNDR3700
Building OpenWrt Kernel for Debian System
Configuration in scripts
Create a Cmake package in OpenWrt
Create a sample procd init script
Create Meson-based packages in OpenWrt
Creating packages
Debugging
Device support policies / best practices
Device Support: MAC address setup
Device Tree Usage in OpenWrt (DTS)
Drivers
embedding-files-in-image
External Toolchain
Frequent PR mistakes or "How to prevent my PR from getting delayed for sure"
GNU Debugger
Hardware Hacking First Steps
High-level security incident response handling process
Image Builder frontends
iwinfo
jshn: a JSON parsing and generation library in for shell scripts
Links to Libraries
MPD-full building from source
Multicast DNS Daemon
netifid
network
Network scripts
OpenWrt Feeds
OpenWrt on UEFI based x86 systems
OpenWrt packages
OpenWrt SELinux policy development, customization, and testing
Overriding Build Options
Overview
procd
procd init scripts
RPC daemon
Security
Sending patches by git send-email
Setting up a build VM in VirtualBox
uBus IPC/RPC System
UCI defaults
Using Dependencies
Using the SDK
Working with GitHub
Write shell scripts in OpenWrt
"Hello, world!" for OpenWrt
Building, deploying and testing your application
...
Creating a package from your application
Creating a simple “Hello, world!” application
Including your package feed into OpenWrt build system
Migrating to use GNU make in your application
Patching your application: Adding new files
Patching your application: Editing existing files
Preparing your OpenWrt build system for use
Networking
Datagram Structures
Linux network interfaces
Networking in the Linux Kernel
Theory
Making OpenWrt releases
High-level release process
How to create a major release
How to create a service release
How to prepare buildbot for major release
Prepare Nitrokey 3A Mini for build artifact signing
Update package lists
Update wikidata
Release goals
20.xx
Release goals for 19.07.4
Release goals for 21.XX
Release goals for 22.03
Release goals for 23.xx
Roadmap and Release Goals for 21.02
security
Security
The OpenWrt source code
Revision number calculation
Toolchain
Build system essentials
Build system setup
Build system setup macOS
Build system setup WSL
Build system usage
Building a single package
Building OpenWrt ON OpenWrt
Cross compiling
Quick image building guide
Using build environments
Using the SDK
Working with patches
ubus
ubus file
ubus iwinfo
ubus network
ubus service
ubus session
ubus system
ubus uci
Documentation
Technical Reference
BCM63xx Firmware Image Information
Boot/Init Requirements
BusyBox
DFS
EasyCwmp (CPE WAN Management Protocol daemon)
External Documentation
Filesystems
Flash memory
Hotplug -- Legacy
Image formats
image/Makefile Details
Init (User space boot) reference for Chaos Calmer: procd
Init Scripts
Internal Layout D-Link DIR-825
libnl and libnl-tiny – Technical Reference
libubox
lldpd
LuCI – Technical Reference
LuCI2 (OpenWrt web user interface)
mountd – Technical Reference
Mounting Block Devices
MTD
netifd (Network Interface Daemon) – Technical Reference
Network Filesystems
odhcp6c
odhcpd
OpenWrt Buildroot – Technical Reference
OpenWrt File System Hierarchy / Memory Usage
OpenWrt – operating system architecture
Preinit and Root Mount and Firstboot Scripts
Procd system init and daemon management
rpcd: OpenWrt ubus RPC daemon for backend server
swconfig
Sysupgrade – Technical Reference
The Boot Process
The Bootloader
The OpenWrt Flash Layout
TRX vs. TRX2 vs. BIN
ubox
ubus (OpenWrt micro bus architecture)
UCI (Unified Configuration Interface) – Technical Reference
unetd
Wireless Modes
Wireless Standards
Xenomai - real-time framework inside OpenWrt
bootloader
ADAM2
ARMBoot
Breed
brnboot
CFE
Das U-Boot
Das U-Boot Environment
EVA
kboot
kwboot
MyLoader
pepe2k-u-boot_mod
PP Boot
PSPBoot
RealTek
RedBoot
RouterBOOT
YAMON
cfe
Changing CFE defaults
WLAN drivers
ath10k
ath10k-ct
ath10k-ct-smallbuffers
ath11k
ath5k
ath9k
b43
b43 legacy
brcmfmac
brcmsmac
mt76
mwlwifi
none
rt2500pci
rt2800pci
rt2800usb
rtl819x
Unknown Wi-Fi driver
Hardware
Antennas
Buffered Cable, Wiggler
Cryptographic Hardware Accelerators
Ethernet Network Switch
GPIO
Hardware Ports
I2C
Index of hardware pages
Integrated Circuit
Internet access technologies
JTAG
JTAG Cables
JTAG utilization
Mobile Wireless
OpenWrt Hardware List
Performance
Serial Cables
Serial Console
SoC (System on a Chip)
Soldering
The CPU (Intellectual property core)
...
Unbuffered Cable, Xilinx DLC5 Cable III
xDSL (Digital subscriber line)
port.gpio
1-wire Bus
soc
Allwinner D1 (sun20i)
Allwinner Sun4i/5i/6i/7i/9i (sunxi)
AR7 SoCs
Broadcom BCM33xx
Broadcom BCM47xx
Broadcom BCM53xx
Broadcom BCM63xx
Freescale i.MX
Freescale MPC
Hisilicon hi35xx
Lantiq SoCs
Marvell Technology Group SoCs
MediaTek / Ralink
MediaTek-Ralink ramips
oxnas
Qualcomm Atheros
Qualcomm Atheros AR5xxx (atheros)
Qualcomm Atheros AR7xxx, AR9xxx and QCA9xxx boards
Realtek
SiFive RISC-V SoCs
SoC (Sytem on Chip)
StarFive RISC-V SoCs
soc.broadcom.bcm47xx
OpenWrt image conversion
soc.broadcom.bcm63xx
BCM6348 GPIO pinmux
SMP/CMT Broadcom 63xx
soc.hisilicon.hi35xx
IVG-HP203Y-AY
switch
Atheros Switches
Targets
adm5120
adm8668
apm821xx
ar7
ar71xx
ar71xx-ath79
at91
ath25
ath79
atheros
au1000
avr32
bcm27xx
bcm47xx
bcm4908
bcm53xx
bcm63xx
bmips
brcm-2.4
brcm2708
brcm47xx
brcm63xx
cns21xx
cns3xxx
cobalt
d1
ep93xx
gemini
imx
imx6
iop32x
ipq40xx
ipq806x
ixp4xx
Kernel versions
kirkwood
lantiq
layerscape
loongarch64
magicbox
malta
mcs814x
mediatek
mpc85xx
mvebu
mxs
octeon
octeontx
omap
orion
oxnas
pistachio
ppc40x
ppc44x
ps3
pxa
qualcommax/ipq807x
ramips
rb532
rdc
realtek
realview
rockchip
Samsung
sibyte
sifiveu
starfive
sunxi
tegra
uml
x86
xburst
zynq