最近更新于 2022-09-23 20:53

我不是写入门教程,只是记录基本编译操作

1.准备Linux系统(示例用Ubuntu 20.04)和梯子。注意全程不要使用root操作。

2.安装依赖

sudo apt -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync

3.从github获取源码: https://github.com/openwrt/openwrt (示例时,最新 21.098)

git clone https://github.com/openwrt/openwrt.git --depth=1

4.进入git下来的源码文件夹内。

# 更新软件包索引
./scripts/feeds update -a
# 安装软件包到package/feeds/
./scripts/feeds install -a

5. (可选) 个性化

(1) 修改主机名和网关 package/base-files/files/bin/config_generate

(2) 设置WiFI名和密码 package/kernel/mac80211/files/lib/wifi/mac80211.sh

# 设置密码
set wireless.default_radio${devidx}.key=

(3) 修改ssh登录欢迎信息 package/base-files/files/etc/banner

(4) 如果想在固件中预置文件,可以在源码根目录创建文件夹 files , 在里面放要预置的文件,比如:

① 放一个文件 demo.txt ,则预置到 /demo.txt

② 放一个文件 /root/demo.txt , 则在 /root 下预置 demo.txt 文件

……

6.配置编译信息 (基础配置 – 基于newifi3-d2)

make menuconfig

CPU架构和路由器型号信息

LuCI->Collections->luci 启用UI管理页面

LuCi->Modules->Translations->Chinese Simplified (zh_Hans) (NEW) 设置简体中文

7.编译

make -j$(nproc) download V=cs
make -j$(nproc) V=cs

编译完成后,固件在源码目录 bin/targets/

作者 IYATT-yx