从源码编译OpenWRT系统

1. 下载源码

1
git clone https://github.com/openwrt/openwrt.git

2. 安装所有可选的软件包

进入openwrt根目录

1
2
./scripts/feeds update  	# 更新最新的包定义
./scripts/feeds install -a # 安装所有的包

3. 检查编译工具是否齐备,生成默认的编译配置文件

1
make defconfig

4. 进入配置工具选项菜单来配置编译固件的内容

1
make menuconfig

5. 编译

1
2
make download -j $(nproc) # 下载编译所需的依赖
make -j $(nproc) V=sc

如果是第一次编译,download这一步需要等待比较长的时间。

编译过程可能会遇到的一些报错:

  1. you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check)

    解决方法:export FORCE_UNSAFE_CONFIGURE=1

  2. [Makefile:158: openwrt/build_dir/target-x86_64_musl/linux-x86_64/tmp/openwrt-x86-64-generic-squashfs-combined.vmdk] Error 1

    解决方法:apt install qemuapt install qemu-utils

6. 安装

编译后会在bin目录下生成不同格式的固件。我们可以选择烧录在路由器、树莓派或x86主机/虚拟机上。

7. 清理

清除编译的可执行文件及配置文件

1
make clean -j $(nproc) V=s

从源码编译OpenWRT系统
https://weijinkang.github.io/2023/06/04/build-openwrt/
作者
Jinkang_Wei
发布于
2023年6月4日
许可协议