最近更新于 2024-05-05 14:19
我不是写入门教程,只是记录基本编译操作
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/ 下
编译OpenWRT